Chương 3 CÀI ĐẶT VÀ THỬ NGHIỆM
3.1. Cài đặt giải pháp
Giải pháp được cài đặt trên môi trường hệ điều hành Android. Tương tự chúng ta cũng sẽ cài đặt được trên môi trường Linux hoặc Window với những bộ cài đặt phù hợp. Trong phần này sẽ trình bày chi tiết từng bước việc cấu hình công cụ kiểm thử, môi trường, thực thi kịch bản kiểm thử và kết quả của việc kiểm thử ứng dụng thực tế trên Android.
3.1.1. Cài đặt môi trường Cài đặt Android Studio.
Download Android Studio từ trang chủ Android như link dưới đây https://developer.android.com/sdk/index.html
Máy tính phải được cài đặt JDK phiên bản 8 trước khi cài đặt Android Studio.
Cài đặt máy ảo Genymotion.
Genymotion cho phép tương tác với máy ảo bằng cách sử dụng dòng lệnh.
Hỗ trợ ADB.
Eclipse và Android Studio plugin.
Android Studio và máy ảo Genymotion shell được hỗ trợ chạy lên các hệ điều hành Linux, Windows và Mac.
3.1.2. Viết kịch bản kiểm thử
Ta sử dụng API của Robotium để viết kịch bản kiểm thử. Tùy vào mục đích kiểm thử thì ta sẽ có những kịch bản kiểm thử khác nhau. Chẳng hạn để kiểm thử việc đăng nhập hệ thống, ta sử dụng mẫu java sau:
public class LoginActivityTest extends ActivityInstrumentationTestCase2<LoginActivity> { private Solo solo;
public LoginActivityTest() { super(LoginActivity.class);
}
@Override
public void setUp() throws Exception {
solo = new Solo(getInstrumentation(), getActivity());
}
public void test_LOGIN_01() throws Exception { solo.assertCurrentActivity("",LoginActivity.class);
solo.enterText(0,"");
solo.enterText(1,"");
solo.clickOnButton(solo.getString(R.string.btn_Login));
Assert.assertTrue(solo.waitForText("Please input username and password"));
}
public void test_LOGIN_02() throws Exception { solo.assertCurrentActivity("",LoginActivity.class);
solo.enterText(0,"admin");
solo.enterText(1,"");
solo.clickOnButton(solo.getString(R.string.btn_Login));
Assert.assertTrue(solo.waitForText("Please input username and password"));
}
public void test_LOGIN_03() throws Exception { solo.assertCurrentActivity("",LoginActivity.class);
solo.enterText(0,"");
solo.enterText(1,"admin");
solo.clickOnButton(solo.getString(R.string.btn_Login));
Assert.assertTrue(solo.waitForText("Please input username and password"));
}
public void test_LOGIN_04() throws Exception { solo.assertCurrentActivity("",LoginActivity.class);
solo.enterText(0,"sa");
solo.enterText(1,"sa");
solo.clickOnButton(solo.getString(R.string.btn_Login));
Assert.assertTrue(solo.waitForText("Username or password error"));
}
public void test_LOGIN_05() throws Exception { solo.assertCurrentActivity("",LoginActivity.class);
solo.enterText(0,"admin");
solo.enterText(1,"admin");
solo.clickOnButton(solo.getString(R.string.btn_Login));
Assert.assertTrue(solo.waitForText("Login sucessfull"));
}
public void test_CANCEL_01() throws Exception { solo.assertCurrentActivity("",LoginActivity.class);
solo.enterText(0,"admin");
solo.enterText(1,"admin");
solo.clickOnButton(solo.getString(R.string.btn_Cancel));
String str1 = solo.getEditText(0).getText().toString();
String str2 = solo.getEditText(1).getText().toString();
boolean result = false;
if (str1.equalsIgnoreCase("") && str2.equalsIgnoreCase("")){
result = true;
}
assertEquals(result,true);
}
@Override
public void tearDown() throws Exception { solo.finishOpenedActivities();
} }
3.1.3. Thực thi kiểm thử
Sau khi hoàn tất các bước trên, chúng ta bắt đầu thực thi kiểm thử.
Nhấp chuột phải vào tệp LoginActivityTest.java chọn Run
Hình 3.1. Thực thi kiểm thử màn hình đăng nhập hệ thống.
Chương trình chạy như sau:
Đầu tiên, máy ảo Emulator được khởi động và mở khóa máy ảo.
Tiếp theo, ứng dụng sẽ được cài đặt vào máy ảo, chương trình tự động chạy và hiển thị ra màn hình.
Sau đó, dữ liệu kiểm thử do chúng ta đã chuẩn bị trước đó sẽ tự động nhập vào các trường tên đăng nhập, mật khẩu trên màn hình và tự động bấm nút đăng nhập.
Quá trình này chạy đến khi thực hiện hết các ca kiểm thử đã được dựng sẵn trong chương trình.
Chọn kiểm thử LoginActivityTest
Chọn Run
Cuối cùng, sau khi thực hiện xong các ca kiểm thử, chương trình sẽ in ra kết quả của các ca kiểm thử như hình dưới đây:
Hình 3.2. Kết quả kiểm thử màn hình đăng nhập hệ thống.
Dưới đây là bản thống kê kết quả sau khi thực hiện xong các ca kiểm thử màn hình đăng nhập hệ thống.
Bảng 3.1. Thống kê kết quả ca kiểm thử đăng nhập hệ thống.
Đăng nhập hệ thống
STT TestCase ID Thời gian thực hiện Kết quả
1 LOGIN_01 4s 356 Pass
2 LOGIN_02 24s 502 Fail
3 LOGIN_03 24s 448 Fail
4 LOGIN_04 4s 361 Pass
5 LOGIN_05 24s 559 Fail
6 CANCEL_01 5s 274 Pass
Kết quả kiểm thử chương trình
3.1.4. Kết quả kiểm thử
Sau khi thực thi xong các ca kiểm thử, các kết quả được ghi lại vào tệp excel.
Dưới đây là kết quả của ca kiểm thử đăng nhập hệ thống.
Hình 3.3. Kết quả kiểm thử ca đăng nhập hệ thống.
Module Code
Pass Fail Untested N/A
3 3 0 0
ID
Te st C ase De scri pti on
Te st C ase
Proce du re Expe cte d O u tpu t Pre -con di ti on Re su l t
Au tom ati on Te st C ase ID
De scri pti on: Login với username và password hợp lệ
1. Nhập username 1. T rường username hiển t hị chính xác dữ liệu người dùng đã nhập
Te st data: 2. Nhập password 2. T rường password hiển t hị chính xác dữ liệu người dùng đã nhập
+ Username:
admin
3. Click Login 3. Hệ t hống đăng nhập t hành công.
Màn hình quản lý được hiển t hị
+ P assword:
admin
De scri pti on: Login với username và password không t ồn t ại
1. Nhập username 1. T rường username hiển t hị chính xác dữ liệu người dùng đã nhập
Te st data: 2. Nhập password 2. T rường password hiển t hị chính xác dữ liệu người dùng đã nhập
+ Username: sa1 3. Click Login 3. Hệ t hống đăng nhập không t hành công và hiển t hị t hông báo lỗi + P assword: sa1
De scri pti on: Login với username và password bao gồm kí t ự khoảng t rắng
1. Nhập username 1. T rường username hiển t hị chính xác dữ liệu người dùng đã nhập
Te st data: 2. Nhập password 2. T rường password hiển t hị chính xác dữ liệu người dùng đã nhập
+ Username: 3. Click Sign In 3. Hệ t hống đăng nhập không t hành công và hiển t hị t hông báo lỗi + P assword:
De scri pti on: Login với username rỗng
1. Nhập password 1. T rường password hiển t hị chính xác dữ liệu người dùng đã nhập
Te st data: 2. Click Sign In 2. Hệ t hống đăng nhập không t hành công và hiển t hị t hông báo lỗi
+ Username:
+ P assword:
admin
De scri pti on: Login với password rỗng
1. Nhập username 1. T rường username hiển t hị chính xác dữ liệu người dùng đã nhập
Te st data: 2. Click Sign In 2. Hệ t hống đăng nhập không t hành công và hiển t hị t hông báo lỗi
+ Username:
admin + P assword:
De scri pti on: Chức năng Cancel
1. Nhập username 1. T rường username hiển t hị chính xác dữ liệu người dùng đã nhập
Te st data: 2. Nhập password 2. T rường password hiển t hị chính xác dữ liệu người dùng đã nhập
+ Username:
admin
3. Click Cancel 3. Hệ t hống t hực hiện xóa dữ liệu t rên form
+ P assword:
admin
Kết quả kiểm thử ứng dụng Human Resource Management cho chức năng đăng nhập hệ thống
User đã t ồn t ại t rong CSDL Login
Number of Test cases 7
S i gn In
1 User đã t ồn t ại t rong CSDL P ass LOGIN_01
4 User đã t ồn t ại t rong CSDL Fail LOGIN_04
2 User đã t ồn t ại t rong CSDL P ass
Fail 3
LOGIN_02
LOGIN_05
6 CANCEL_01
5 User đã t ồn t ại t rong CSDL Fail
Form Sign In đã được mở P ass
LOGIN_03