अपने-आप होने वाली जांच की फिर से कोशिश करें

जांच किसी भी वजह से विफल हो सकती है, और कभी-कभी उसे फिर से चलाना ही इसे फिर से पास किया जा सकता है (फ़्लेकनेस की वजह से, जैसे कि बुनियादी ढांचा). फिर से कोशिश करने के लिए, Trefed को कॉन्फ़िगर किया जा सकता है स्वचालित रूप से.

अपने-आप कोशिश करने की सुविधा का मुख्य मकसद, सभी जांच को फिर से न चलाने से बचना है; यह फिर से चलता है सिर्फ़ असफल जांचों की वजह से, एक्ज़ीक्यूशन में लगने वाले समय में बड़ी बचत होती है.

Trefed ऐप्लिकेशन, यह पता लगाने के लिए कई बार टेस्ट करने की सुविधा देता है दोहराव की सुविधा से, गड़बड़ियों को ठीक करने में मदद मिलती है. इस मामले में, सभी टेस्ट उसे फिर से चलाएं और किसी भी बार का टेस्ट फ़ेल होने पर टेस्ट पूरा नहीं होगा.

अपने-आप फिर से कोशिश करने की सुविधा चालू करें

अपने-आप फिर से कोशिश करने की कोशिश को इस तरीके से कंट्रोल किया जाता है: रीडिसीज़न ऑब्जेक्ट इसमें इस सुविधा को चालू करने के लिए दो विकल्प हैं: max-testcase-run-count और retry-strategy.

max-testcase-run-count बार-बार कोशिश करने या बार-बार दोहराने की सुविधा देता है कोशिश नहीं की जा सकती. यह एक ऊपरी सीमा सेट करता है, ताकि हमेशा के लिए फिर से कोशिश करने से बचा जा सके. retry-strategy यह फ़ैसला लेता है कि फिर से कोशिश कैसे की जाए; नीचे दिए गए सेक्शन देखें देखें.

अपने-आप फिर से कोशिश करने की सुविधा बंद करें

नीचे दिए गए विकल्प का इस्तेमाल करें:

--retry-strategy NO_RETRY

फिर से कोशिश नहीं की जा सकी

टेस्ट फ़ेलियर की फिर से कोशिश करने के लिए, नीचे दिए गए विकल्पों का इस्तेमाल करें:

--retry-strategy RETRY_ANY_FAILURE --max-testcase-run-count X

ऐसा तब तक होगा, जब तक समस्या हल नहीं हो जाती या उतनी बार कोशिश नहीं की जाती तक पहुंचा हो, जो भी पहले हो.

इटरेशन

कई समय तक टेस्ट को फिर से चलाने के लिए, इन विकल्पों का इस्तेमाल किया जा सकता है:

--retry-strategy ITERATIONS --max-testcase-run-count X

नतीजे कैसे दिखते हैं?

डिफ़ॉल्ट रूप से, नतीजों की रिपोर्ट करने वाले लोगों को सभी कोशिशों के एग्रीगेट किए गए नतीजे मिलेंगे.

उदाहरण के लिए: RETRY_ANY_FAILURE के लिए Fail और Pass का नतीजा मिलेगा एग्रीगेट किया गया Pass, क्योंकि फिर से कोशिश करने पर गड़बड़ी को हटा दिया गया.

ऐसा हो सकता है कि रिपोर्टर को, एग्रीगेट नहीं किए गए नतीजे मिल सकें. ऐसा करने के लिए, तो उन्हें इस प्रोग्राम के ज़रिए, ISupportGranularresults इंटरफ़ेस जो ज़्यादा जानकारी वाले (नॉन-एग्रीगेट किए गए) नतीजों के साथ काम करता है.

लागू करने के बारे में जानकारी

टेस्ट केस लेवल पर, गड़बड़ियों को फिर से चलाने के लिए, अपने-आप फिर से कोशिश करने की सुविधा को चालू करें ITestFilterReceiver.

यदि आप ITestFilterReceiver लागू नहीं कर सकते हैं, तो आप लागू कर सकते हैं IAutoRetriableTest फिर से चलाने के तरीके को मैन्युअल रूप से नियंत्रित करने के लिए. इंस्टॉल किए गए इंस्ट्रुमेंटेशन टेस्ट उस इंटरफ़ेस को लागू करने का एक उदाहरण दिया गया है.