TF में डिवाइसों के साथ काम करना

Trade Federation, जांच करने के लिए ITestDevice नाम के एब्स्ट्रैक्शन का इस्तेमाल करता है. यह एब्स्ट्रैक्शन, सबसे कम कॉमन डिनोमिनेटर वाले Android डिवाइस को ऑब्जेक्ट बनाता है:

  • उसमें सीरियल नंबर हो
  • इसका स्टेटस: ऑनलाइन, उपलब्ध, रिकवरी या उपलब्ध नहीं है
  • इसमें भरोसेमंद होने की कोई धारणा होती है. उदाहरण के लिए, अगर हम कोई निर्देश देते हैं, तो हम इस बात का पता लगा सकते हैं कि निर्देश पूरा हो गया है या नहीं, डिवाइस पर निर्देश देने की सुविधा काम कर रही है या नहीं, और निर्देश देने के दौरान डिवाइस काम कर रहा है या नहीं.

डिवाइस क्लास

ITestDevice के तीन मुख्य तरीके, इसके तीन सामान्य इस्तेमाल के उदाहरण हैं.

फ़िज़िकल डिवाइस

यह एक असल हार्डवेयर है, जो यूएसबी या फिर adb की टीसीपी सुविधा का इस्तेमाल करके, TF होस्ट मशीन से कनेक्ट होता है. TestDevice क्लास, ddmlib लाइब्रेरी के ऊपर होती है. यह adb का Java इंटरफ़ेस है. इसलिए, adb devices में दिए गए किसी भी डिवाइस को इंस्टैंशिएट किया जा सकता है और उसका इस्तेमाल TestDevice के तौर पर किया जा सकता है.

एम्युलेटर

एमुलेटर को खास तौर पर TF मैनेज करता है, क्योंकि वे किसी दूसरी प्रोसेस में मौजूद होते हैं. किसी एमुलेटर के साथ इंटरैक्ट करने के लिए, निर्देश के लिए --emulator आर्ग्युमेंट तय करें. ज़्यादा जानकारी के लिए, LocalSdkBuildProvider और SdkAvdPreparer देखें.

कोई डिवाइस नहीं

मान लें कि आपके पास ऐसा टेस्ट है जो किसी डिवाइस के साथ इंटरैक्ट नहीं करता. उदाहरण के लिए, हो सकता है कि यह किसी सेवा से सिर्फ़ फ़ाइल डाउनलोड करे और पुष्टि करे कि फ़ाइल मान्य है या नहीं. NullDevice एक ऐसा ITestDevice है जो सिर्फ़ एक स्टब है. इसका सीरियल नंबर null-device-N जैसा होता है. साथ ही, ज़्यादातर ऑपरेशन या तो बिना किसी कार्रवाई के पूरे हो जाते हैं या फिर गड़बड़ी का मैसेज दिखाते हैं.