Tổng quan về Robotium Robotium là mở rộng của Android testing framework hỗ trợtạo các kiểm thử giao diện cho ứng dụng Android Robotium test kế thừa từ ActivityInstrumentationTestCase2
Trang 1KIỂM THỬ VÀ TRIỂN KHAI ỨNGDỤNG ANDROID
Bài 5: Sử dụng Robotium để kiểm thử ứng dụng Android
Trang 2Nội dung bài học
Trang 3Tổng quan về Robotium
Robotium là mở rộng của Android testing framework hỗ trợtạo các kiểm thử giao diện cho ứng dụng Android
Robotium test kế thừa từ ActivityInstrumentationTestCase2
và cho phép kiểm thử các test case trên các Activity khác
nhau
Trang chủ của Robotium:
http://code.google.com/p/robotium/
Trang 4Các lợi ích của Robotium
Kiểm thử ứng dụng Android, bao gồm ứng dụng native vàhybrid
Không đòi hỏi nhiều kiến thức về ứng dụng khi kiểm thử
Framework cung cấp điều khiển thao tác trên Activity mộtcách tự động
Chạy kiểm thử với tốc độ cao
Trang 5Cài đặt Robotium
Tải file JAR robotium tại trang web
http://code.google.com/p/robotium/
Tạo thư mục libs và bố sung file jar và thư mục
Thêm file JAR robotium vào project buid path
Trang 6Robotium API
Lớp kiểm thử chính của Robotium là lớp Solo
Solo được khởi tạo với instrumentation của test case và
activity đầu tiên được kiểm thử
Solo cung cấp các phương thức để gọi giao diện người
dùng Android
Trang 7Các phương thức kiểm thử của Solo
getView(int id): tìm kiếm view với ID cụ thể trong activity hiện tại
assertCurrentActivity(text, Activity.class): kiểm tra xem
activity hiện tại có bằng với Activity trong tham số thứ 2 không
getCurrentActivity().getFragmentManager()
.findFragmentById(): tìm kiếm fragment
waitForText(text): đợi text trên màn hình, mặc định là 5 giây
clickOnButton(text): click vào button với text cho trước
Trang 8Các phương thức kiểm thử của Solo (tiếp)
sendKey(Solo.MENU): gửi sự kiện phím menu
clickOnText(text): tìm kiếm text trên giao diện người dùnghiện tại và click vào điều khiển
enterText(): điền text
searchText(text): tìm kiếm text trên giao diện người dùnghiện tại, trả lại true nếu tìm thấy
searchButton(text): tìm kiếm button với text trên giao diệnngười dùng hiện tại
clickOnSearch(): cho phép click trên một phần màn hình
Trang 9Các phương thức kiểm thử của Solo
goBack(): ấn nút Back
setDatePicker(): thiết lập ngày cho DatePicker
clickInList(x): click vào item vị trí x trên ListView
pressSpinnerItem(0,2): click vào một item trên Spinner
isCheckBoxChecked(): kiểm tra xem checkbox đã được check
chưa
takeScreenshot(): ghi screenshot trên thiết bị vào thư mục
/sdcard/Robotium-Screenshots/ Yêu cầu quyền
android.permission.WRITE_EXTERNAL_STORAGE trong file
AndroidManifest.xml
waitForActivity(SecondActivity.class, 2000): đợi activity trong 2 giây
Trang 10Code ví dụ về Robotium
Trang 11DEM O
Sử dụng Solo để kiểm thử
Trang 12Robotium Recorder
Ghi thông tin các Android UI test case trong vài phút
Eclipse IDE plugin
Ghi thông tin kiểm thử từ emulator và thiết bị thật
Hỗ trợ kiểm thử file apk và ứng dụng thật (có source code)
Tự động nhận biết resouce ID
Trang 13Cài đặt Robotium Recorder
Cài đặt Java SDK
Cài đặt Android SDK (nên cài đặt ADT bundle with Eclipse)
Vào Eclipse: Help>Install New Software
Gõ http://recorder.robotium.com/updates“ trong mục Work With
Chọn Robotium Recorder và tiến hành cài đặt
Trang 14Cài đặt Robotium Recorder
Trang 15Khởi tạo Robotium Recorder
Chọn Eclipse > New > Other > Android - Robotium Recorder
Trang 16Khởi tạo Robotium Recorder
Có thể khởi tạo Robotium Recorder bằng cách chuột phảivào một ứng dụng đã tồn tại và chọn Robotium Recorder > New Robotium Test
Trang 17Ghi thông tin test case từ workspace project
Bạn có thể chọn file APK hoặc workspace project để ghithông tin test case
Chọn test project name và click Next
Trang 18Ghi thông tin test case từ APK
Chọn select apk rồi chọn file APK muốn kiểm thử
Robotium sẽ tự động ký file APK với local debug key
Trang 19Khởi tạo ghi thông tin test case
Trang 20Cấu hình Robotium Recorder khi ghi kiểm thử
Use sleep: chọn nếu muốn play lại các test case với cùng tốc
độ ghi test case Thích hợp với các ứng dụng hybrid hoặccác ứng dụng chạy chậm
Keep app data: chọn nếu app data cần lưu trữ khi bắt đầuphiên làm việc ghi kiểm thử mới
Trang 21Cấu hình Robotium Recorder khi ghi kiểm thử
Identify class over string: defaultView identifier luôn là
resource ID Nếu thiếu resource ID có thể chọn View class identifier thay vì chọn String identifier (text hiển thị trênView)
Click and drag coordinate: chọn nếu bước click và thả vớitọa độ màn hình được ghi lại
Trang 22Cấu hình Robotium Recorder khi ghi kiểm thử
Xóa Step
Chụp ảnh
Lưu thông tin kiểm thử vào Project
Trang 23DEM O
Sử dụng Robotium Recorder