Trade Federation sử dụng một lớp trừu tượng có tên là ITestDevice
để chạy kiểm thử. Mô-đun trừu tượng này sẽ tạo đối tượng cho thiết bị Android có mẫu số chung nhỏ nhất:
- Có số sê-ri
- Trạng thái: Trực tuyến, Có sẵn, Đang khôi phục hoặc Không có sẵn
- Phương thức này có một số khái niệm về độ tin cậy. Ví dụ: nếu chạy một lệnh, chúng ta có thể phân biệt giữa trường hợp lệnh chưa hoàn tất, trường hợp thiết bị không hỗ trợ chạy lệnh và trường hợp thiết bị không phản hồi trong khi chạy lệnh.
Lớp thiết bị
Ba cách triển khai chính của ITestDevice
đại diện cho ba trường hợp sử dụng phổ biến.
Thiết bị thực
Đây là một phần cứng thực tế, được kết nối với máy chủ TF qua USB hoặc bằng cách sử dụng tính năng TCP của adb. Lớp TestDevice nằm trên thư viện ddmlib, đây là giao diện Java cho adb. Vì vậy, mọi thiết bị thực tế được liệt kê trong adb devices
đều có thể được tạo bản sao và sử dụng làm TestDevice
.
Trình mô phỏng
Trình mô phỏng được TF xử lý đặc biệt vì chúng nằm trong một quy trình khác. Để tương tác với Trình mô phỏng, hãy chỉ định đối số --emulator
cho lệnh. Hãy xem LocalSdkBuildProvider và SdkAvdPreparer để biết thêm thông tin.
Không có thiết bị nào
Giả sử bạn có một kiểm thử không tương tác với thiết bị nào cả. Ví dụ: trình tải xuống có thể chỉ tải một tệp xuống từ một số dịch vụ và xác minh rằng chính tệp đó là hợp lệ. NullDevice là một ITestDevice
chỉ là một đoạn mã giả. Lớp này có số sê-ri như null-device-N
và hầu hết các thao tác đã thử đều không hoạt động hoặc gửi.