बड़े परीक्षण सुइट्स में समय-संवेदनशील कार्यों के कारण दुर्लभ परीक्षण विफलताओं को संभालने का प्रयास करना निराशाजनक हो सकता है। अच्छी खबर यह है कि आप असफल परीक्षणों को पुनः प्रयास करने के लिए एक TestRule लागू कर सकते हैं।
एक TestRule आपको परीक्षण निष्पादन पर नियंत्रण देता है। एक RetryRule बनाने के लिए, एक वर्ग को इस तरह परिभाषित करें:
public class RetryTest {
public class RetryRule implements TestRule {
...
public Statement apply(Statement base, Description description) {
...
}
...
}
}
लागू विधि में, दिए गए आधार का उपयोग करके परीक्षण कॉल के आसपास अपना पुनः प्रयास तर्क डालें। मूल्यांकन():
public Statement apply(Statement, Description) {
return new Statement() {
@Override
public void evaluate() throws Throwable {
...
for (int i = 0; i RetryRule का उपयोग करना
नियम के साथ अपनी टेस्ट क्लास को इस तरह से एनोटेट करें:
...
@Rule
public Retry rule = new Retry(3);
...
अन्य विकल्प
कस्टम टेस्टरनर:
वैकल्पिक रूप से, आप एक कस्टम टेस्टरनर बना सकते हैं जो ब्लॉकJUnit4ClassRunner का विस्तार करता है और runChild() को लागू करने के लिए ओवरराइड करता है पुनः प्रयास तंत्र।
नोट:
- RetryRule आपको पुनःप्रयास की संख्या निर्दिष्ट करने की अनुमति देता है, जबकि कस्टम TestRunner ऐसा नहीं करता है।
- आप पुनः प्रयास तर्क को चुनिंदा रूप से लागू करने के लिए एनोटेशन का भी उपयोग कर सकते हैं।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3