टेस्ट रनर का स्ट्रक्चर

टेस्ट रनर, कॉल करने के फ़्लो की एक्ज़ीक्यूशन यूनिट है. यहां पर ही जांच की जाती है.

इंटरफ़ेस

टेस्ट रनर को IRemoteTest इंटरफ़ेस के ज़रिए तय किया जाता है. यह लागू करने के लिए एक आसान run तरीका उपलब्ध कराता है. इसे टेस्ट चलाने के दौरान कॉल किया जाएगा.

इससे, टेस्ट रन की आसानी से परिभाषा तय की जा सकती है. हालांकि, आम तौर पर, टेस्ट लिखने वाले लोगों को अपने टेस्ट को सही तरीके से लिखने के लिए ज़्यादा जानकारी की ज़रूरत होती है. जैसे, बिल्ड और डिवाइस की जानकारी. ऐसे में, यहां दिए गए इंटरफ़ेस काम आते हैं.

सामान्य

फ़िलहाल, इन दोनों इंटरफ़ेस का सबसे ज़्यादा इस्तेमाल किया जाता है, क्योंकि ये ज़्यादातर टेस्ट की बुनियादी ज़रूरतों को पूरा करते हैं.

  • IBuildReceiver की मदद से, जांच में बिल्ड प्रोवाइडर चरण में बनाया गया IBuildInfo ऑब्जेक्ट पाया जा सकता है. इसमें जांच सेटअप से जुड़ी सारी जानकारी और आर्टफ़ैक्ट शामिल होते हैं.
  • IDeviceTest की मदद से, TF को ITestDevice ऑब्जेक्ट मिलता है. यह ऑब्जेक्ट, जांच में शामिल डिवाइस के बारे में जानकारी देता है. साथ ही, इससे इंटरैक्ट करने के लिए एक एपीआई भी मिलता है.

बेहतर

कुछ और इंटरफ़ेस भी हैं, जिनकी मदद से टेस्ट हार्नेस और टेस्ट रनर के बीच ज़्यादा जटिल इंटरैक्शन किया जा सकता है:

  • ITestFilterReceiver, इसकी मदद से टेस्ट को सिर्फ़ कुछ टेस्ट चलाने के लिए फ़िल्टर का सेट मिलता है. यह टेस्ट के सबसेट को चलाने में मददगार होता है.
  • ITestCollector, इसकी मदद से टेस्ट रनर, टेस्ट को असल में चलाने के बजाय सिर्फ़ ड्राई-रन कर सकता है. यह सभी टेस्ट केस की सूची इकट्ठा करने में मददगार है.

मौजूदा टेस्ट रनर

कई तरह के टेस्ट रनर पहले से मौजूद हैं. इनमें से कुछ, मुख्य टेस्ट टाइप के लिए हैं:

ऊपर बताए गए टेस्ट रनर के अलावा, ज़्यादातर कस्टम टेस्ट रनर मौजूद हैं. ये कुछ फ़ंक्शनल टेस्टिंग के लिए खास काम करते हैं. जैसे, बूट टेस्ट.

नया टेस्ट रनर लिखना

नया टेस्ट रनर लिखने के बारे में ज़्यादा जानकारी पाने के लिए, टेस्ट लिखने का सेक्शन देखें.