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