Robotium là gì?
Robotium là một khuôn khổ Thử nghiệm Android để tự động hóa các trường hợp thử nghiệm cho các ứng dụng gốc và ứng dụng kết hợp. Sử dụng Robotium, nhà phát triển có thể tạo trường hợp thử nghiệm GUI tự động mạnh mẽ cho các ứng dụng Android. Ngoài ra, nhà phát triển có thể viết một kịch bản kiểm tra chức năng, hệ thống và chấp nhận, trải rộng nhiều hoạt động của Android.
Trong hướng dẫn này, bạn sẽ học-
- Khung thử nghiệm Robotium
- Cách sử dụng Robotium
- BƯỚC 1) Đặc điểm kỹ thuật kiểm tra thiết kế
- BƯỚC 2) Viết chương trình TEST
- BƯỚC 3) Chạy thử nghiệm
- BƯỚC 4) Nhận kết quả kiểm tra
Khung thử nghiệm Robotium
Khung thử nghiệm Android tiêu chuẩn có một số hạn chế như bên dưới
- Không thể xử lý nhiều hoạt động
- Hiệu suất thực thi kiểm tra chậm
- Các trường hợp kiểm thử rất phức tạp và khó thực hiện
Robotium framework là lựa chọn tốt hơn để tiến hành thử nghiệm trên ứng dụng Android
Robotium là khung mã nguồn mở và được coi là một phần mở rộng của khung thử nghiệm Android. Sử dụng Robotium, nhà phát triển có thể tạo các trường hợp thử nghiệm GUI tự động mạnh mẽ cho các ứng dụng Android. Hơn nữa, nhà phát triển có thể viết các kịch bản kiểm tra chức năng, hệ thống và chấp nhận, kéo dài nhiều hoạt động Android.
Các tính năng nâng cao của Robotium
Các lớp trường hợp thử nghiệm Robotium
Robotium sử dụng tập hợp các lớp ( com.jayway.android.robotium.solo ) để thử nghiệm . Lớp này hỗ trợ các trường hợp kiểm thử trải dài trên nhiều hoạt động. Solo được tích hợp với ActivityIusalmentationTestCase2.
Tích hợp Robotium và ActivityI Kinh nguyệtTestCase2
Tester có thể viết các trường hợp thử nghiệm mà không cần kiến thức về thiết kế ứng dụng (kiểm thử hộp đen) bằng cách sử dụng các lớp trường hợp thử nghiệm Robotium. Đây là một tính năng nổi bật so với các lớp test case của Android.
Cách sử dụng Robotium
Để sử dụng Robotium trong dự án thử nghiệm Android của bạn, bạn cần làm theo các bước dưới đâySử dụng Robotium để tiến hành thử nghiệm trên ứng dụng Android. Để đảm bảo chất lượng ứng dụng Android của bạn, bạn nên làm theo quy trình dưới đây
- Đặc điểm kỹ thuật kiểm tra thiết kế
- Phát triển chương trình thử nghiệm
- Thực thi Test Case trên thiết bị đích
- Thu thập kết quả kiểm tra
Quy trình kiểm tra ứng dụng Android
BƯỚC 1) Đặc điểm kỹ thuật kiểm tra thiết kế
- Đây là bước đầu tiên để kiểm tra ứng dụng của bạn, trong bước này, bạn Xác định mục tiêu để kiểm tra. Trong ứng dụng Android của bạn, có nhiều mục tiêu cần được kiểm tra như giao diện người dùng, Hoạt động, thành phần, dịch vụ. Xác định rõ ràng mục tiêu trong ứng dụng của bạn sẽ giúp đạt được phạm vi kiểm tra rộng rãi.
- Lập kế hoạch cho các loại kiểm thử cần được tiến hành (Kiểm thử đơn vị, Kiểm thử chức năng, Kiểm thử hệ thống).
- Thiết kế các trường hợp thử nghiệm để có độ phủ tối đa nhưng giảm thiểu số lượng trường hợp thử nghiệm. Càng nhiều mã được kiểm tra càng có nhiều cơ hội phát hiện lỗi sớm.
BƯỚC 2) Viết chương trình TEST
Phần này hướng dẫn bạn cách viết một chương trình thử nghiệm Android bằng Android Junit Test và Robotium. Giả sử rằng bạn đã phát triển một tên chương trình Android HelloAndroid. Chương trình này có một số chức năng được mô tả dưới đây:
- Hiển thị dòng chữ "Hello world!" trên màn hình.
- Hiển thị thông báo HelloAndroid khi người dùng nhấn nút "Bắt đầu"
Ứng dụng HelloAndroid
yêu cầu hệ thống
- Nền tảng Android đi kèm với khung JUnit 3.0 được tích hợp sẵn.
- Để tạo Dự án thử nghiệm Android từ Eclipse, máy tính của bạn phải cài đặt:
- Phiên bản mới nhất Nền tảng Android (hiện tại là Android 8.1)
Bạn có thể tải xuống Eclipse IDE với ADT tích hợp sẵn (Công cụ dành cho nhà phát triển Android). Nó bao gồm các thành phần Android SDK thiết yếu và một phiên bản của IDE Eclipse.
Đối với khung kiểm tra Robotium, bạn cần gỡ bỏ thư viện Robotium từ trang web Robotium.
Tạo dự án thử nghiệm Android
- Nhấp vào Tệp -> Mới -> Khác
- Chọn: Android -> Android Test Project như hình bên dưới -> Chọn Tiếp theo
Tạo dự án thử nghiệm Android mới
Viết tên dự án thử nghiệm của bạn. Theo quy ước đặt tên, dự án thử nghiệm của bạn phải có tên "HelloAndroidTest"
Thêm cơ sở tên dự án thử nghiệm dựa trên quy ước đặt tên
Chọn ứng dụng mục tiêu đang thử nghiệm. Trong trường hợp này, đây là HelloAndroid nhấp vào Kết thúc
Chọn ứng dụng mục tiêu đang thử nghiệm
Tạo bộ thử nghiệm
Dựa trên đặc điểm kỹ thuật thử nghiệm của mình, bạn bắt đầu tạo các bộ thử nghiệm cho chương trình thử nghiệm của mình. Bạn có thể chọn nhiều khung Thử nghiệm khác nhau. Trong hướng dẫn này, tôi chọn khung kiểm tra Android tiêu chuẩn ActivityInticmentationTestCase2 . Bạn phải thêm tệp thư viện Robotium vào thư mục libs trong thư mục dự án của mình trong trường hợp bạn muốn thử nghiệm với khuôn khổ Robotium. (Bạn tạo thư mục lib trong thư mục dự án của mình).
Một trường hợp thử nghiệm xác định vật cố định để chạy nhiều thử nghiệm. Để xác định một trường hợp kiểm thử, bạn phải tuân theo cấu trúc chương trình dưới đây:
- Triển khai một lớp con của
TestCase
. - Xác định các biến thể hiện lưu trữ trạng thái của vật cố định
- Khởi tạo trạng thái cố định bằng cách ghi đè setUp ()
- Dọn dẹp sau khi kiểm tra bằng cách ghi đè lên xé toạc ().
Cấu trúc chương trình kiểm tra
gói com.example.helloandroid.test;nhập com.example.helloandroid.HelloAndroid;nhập com.jayway.android.robotium.solo.Solo;nhập android.test.ActivityI Kinh nguyệtTestCase2;nhập android.widget.TextView;public class HelloAndroidTest mở rộng ActivityIricalmentationTestCase2{HelloAndroid mActivity riêng;TextView mView riêng tư;private String resourceString;solo cá nhân;công khai HelloAndroidTest () {// VIỆC CẦN LÀM Sơ khai của hàm tạo được tạo tự độngsuper ("com.example.helloandroid", HelloAndroid.class);}@Ghi đèbảo vệ void setUp () ném Ngoại lệ {// VIỆC CẦN LÀM Sơ khai phương thức được tạo tự động// super.setUp ();mActivity = this.getActivity ();solo = Solo mới (getInticmentation (), getActivity ());mView = (TextView) mActivity.findViewById (com.example.helloandroid.R.id.textview2);resourceString = mActivity.getString (com.example.helloandroid.R.string.hello_world);}@Ghi đèđược bảo vệ void xéDown () ném Ngoại lệ {// VIỆC CẦN LÀM Sơ khai phương thức được tạo tự động//super.tearDown ();solo.finishOpenedActiilities ();}public void testPrecondition () {khẳng địnhNotNull (mView);}/ * thử nghiệm Ứng dụng Target có hiển thị văn bản "Hello World!" * /public void testSearchText () {khẳng địnhEquals (resourceString, (String) mView.getText ());}/ * kiểm tra Hoạt động HelloAndroid trên ứng dụng đích đã tồn tại * /public void testCurrentActivity () ném Exception {solo.assertCurrentActivity ("hoạt động sai", HelloAndroid.class);}/ * thử nghiệm Giao diện người dùng ứng dụng chứa nút "Bắt đầu" * // * gửi nút bấm sự kiện đến ứng dụng đích * /public void testSearchButton () ném Exception {boolean found = solo.searchButton ("Bắt đầu");solo.clickOnButton ("Bắt đầu");khẳng định (tìm thấy);}}
Thêm các trường hợp thử nghiệm
- Trong cùng một gói với TestSuite, chúng tôi tạo các lớp TestCase
- Để kiểm tra hoạt động nhất định, tức là HelloAndroid, hãy tạo một phạm vi trường hợp thử nghiệm ActivityInticmentationTestCase2
- Trong lớp này, người kiểm tra có thể có được hoạt động kiểm tra thông qua phương thức getActivity ().
- Bạn có thể tự do tạo thử nghiệm cho một hoạt động thử nghiệm bằng phương pháp tạo với tên "thử nghiệm + Tên phương pháp gốc"
- Trong phương pháp thử nghiệm, người thử nghiệm có thể sử dụng chức năng Android JUnit để so sánh giá trị thực tế và giá trị mong đợi. Các phương pháp này được trình bày dưới đây.
Các phương pháp ví dụ về khung kiểm tra Robotium và Android
Các bộ thử nghiệm ở trên đã xác minh rằng GUI ứng dụng phải hiển thị văn bản "Hello World!" Và chứa tên nút "Bắt đầu".
BƯỚC 3) Chạy thử nghiệm
Sau khi bạn viết xong chương trình thử nghiệm của mình, hãy chạy thử nghiệm theo các bước bên dưới
- Kết nối thiết bị Android với PC của bạn (hoặc khởi động Trình mô phỏng trong trường hợp bạn không có thiết bị thực).
- Trong IDE của bạn, nhấp chuột phải vào àRun asàAndroid Unit Test
Chạy chương trình thử nghiệm
Bên cạnh việc chạy thử nghiệm trên IDE, bạn có thể chạy thử nghiệm trên dòng lệnh. Trong chương trình thử nghiệm này, gói thử nghiệm là com.example.helloandroid.test. Trong thiết bị đầu cuối Linux , bạn có thể sử dụng lệnh sau để chạy tất cả thử nghiệm trong gói này:
$ adb shell am tools -w -e package com.example.helloandroid.test
BƯỚC 4) Nhận kết quả kiểm tra
Sau khi thực hiện kiểm tra, bạn sẽ nhận được kết quả kiểm tra.
Trong chương trình thử nghiệm này, 4 phương pháp thử nghiệm được thực hiện. Trong trường hợp này, tất cả các trường hợp thử nghiệm đều được thông qua.
Kết quả kiểm tra đầu ra trong trường hợp tất cả các trường hợp kiểm tra đều vượt qua
Trong trường hợp trường hợp kiểm tra không thành công, đầu ra sẽ hiển thị và cho bạn biết trường hợp kiểm tra nào không thành công
Kết quả kiểm tra đầu ra trong trường hợp tất cả các trường hợp kiểm tra không thành công
Ví dụ về mã nguồn
Bài viết này bao gồm một số ví dụ về Mã nguồn giúp bạn hiểu hướng dẫn rõ ràng hơn và nhanh chóng nắm bắt kiến thức kỹ thuật
- HelloAndroid: Ứng dụng đang được thử nghiệm.
- HelloAndroidTest: Chương trình thử nghiệm sử dụng khung Android Test