TF'de Cihazlarla Çalışma

Trade Federation, testleri çalıştırmak için ITestDevice adlı bir soyutlama kullanır. Bu soyutlama, en düşük ortak payda Android cihazını nesneleştirir:

  • Seri numarası var
  • Bir durumu vardır: Çevrimiçi, Kullanılabilir, Kurtarma veya Kullanılamaz
  • Bazı güvenilirlik kavramına sahiptir. Örneğin, bir komut çalıştırırsak, komutun henüz bitmediği durumu, cihazın çalıştırılan komutları desteklemediği durumu ve komutu çalıştırırken cihazın tepkisiz hale geldiği durumu ayırt edebiliriz.

Cihaz sınıfları

ITestDevice üç ana uygulaması, üç yaygın kullanım ITestDevice temsil eder.

Fiziksel cihaz

Bu, TF ana makineye USB ile veya adb'nin TCP özelliğini kullanarak bağlanan gerçek bir donanım parçasıdır. TestDevice sınıfı, adb için bir Java arayüzü olan ddmlib kitaplığının tepesinde bulunur. Bu nedenle, adb devices listelenen herhangi bir fiziksel cihaz başlatılabilir ve bir TestDevice olarak kullanılabilir.

Emülatör

Emülatörler, başka bir süreçte yaşadıkları için TF tarafından özel olarak ele alınır. Bir Öykünücü ile etkileşim kurmak için komut için --emulator bağımsız değişkenini belirtin. Daha fazla bilgi için LocalSdkBuildProvider ve SdkAvdPreparer'a bakın.

Hiçbir aygıt

Bir cihazla hiç etkileşime girmeyen bir testiniz olduğunu varsayalım. Örneğin, sadece bazı hizmetlerden bir dosya indirip dosyanın kendisinin geçerli olduğunu doğrulayabilir. NullDevice yalnızca bir saplama olan bir ITestDevice . null-device-N gibi bir seri numarasına sahiptir ve çoğu işlemden geçirilmeden sessizce veya atılmaya çalışılır.