2011-05-23 9 views
20

जहां तक ​​मुझे एक टेस्ट केस छोड़ना है, तो सबसे आसान बात यह है कि @Test एनोटेशन को निकालना है, लेकिन बड़ी संख्या में परीक्षण मामलों में इसे करने के लिए बोझिल है। मैं सोच रहा था कि जुनीट में सशर्त रूप से कुछ परीक्षण मामलों को बंद करने के लिए कोई एनोटेशन उपलब्ध है या नहीं।क्या कुछ परीक्षण मामलों को छोड़ने के लिए जुनीट में कोई सशर्त एनोटेशन है?

+3

@ इग्नोर एनोटेशन का उपयोग करने का उचित तरीका है, लेकिन यह सशर्त नहीं है। –

उत्तर

26

यह जानना मुश्किल है कि यह @Ignore एनोटेशन है जिसे आप ढूंढ रहे हैं, या यदि आप वास्तव में कुछ जुनीट परीक्षणों को सशर्त रूप से बंद करना चाहते हैं। टेस्टकेस को बंद करना सशर्त रूप से Assume का उपयोग करके किया जाता है।

आप वहाँ भी एक नहीं बल्कि अच्छा धागा प्रवाह से अधिक स्टैक पर यहाँ है JUnit 4.5

के लिए release notes में मान्यताओं के बारे में पढ़ सकते हैं: अन्य लोगों को यहाँ रखा Conditionally ignoring tests in JUnit 4

5

आप @Ignore एनोटेशन का उपयोग कर सकते हैं जिसे आप एक परीक्षण या टेस्ट क्लास में निष्क्रिय करने के लिए जोड़ सकते हैं।

आप कुछ सशर्त की जरूरत है, आप एक कस्टम परीक्षण धावक है कि आप का उपयोग कर रजिस्टर कर सकते हैं

@RunWith(YourCustomTestRunner.class) 

आपको लगता है कि इस्तेमाल कर सकते हैं जो अभिव्यक्ति भाषा या संदर्भ के लिए एक प्रणाली संपत्ति का उपयोग करता है एक कस्टम एनोटेशन परिभाषित करने के लिए बनाना होगा जांच करें कि एक परीक्षण चलाना चाहिए या नहीं। लेकिन इस तरह का एक जानवर बॉक्स से बाहर नहीं है।

+0

पता नहीं है कि उसने अपना प्रश्न संपादित किया है, लेकिन '@ इग्नोर' सशर्त नहीं है। –

+0

@Alan अगर मुझे ओपी सही मिल जाए, तो सशर्त की उनकी व्याख्या "क्या वह एनोटेशन जोड़ती है या नहीं" :-) –

+0

सच है। मुझे लगता है कि जब हम जवाब स्वीकार करेंगे तो हम पाएंगे। –

2

यदि आप जुनीट 4.x का उपयोग करते हैं, तो बस @Ignore का उपयोग करें। here

+0

पता नहीं कि उसने अपना प्रश्न संपादित किया है, लेकिन '@ इग्नोर' सशर्त नहीं है। –

7

रूप @Ignore एक परीक्षण पर ध्यान नहीं देता।

यदि आप कुछ सशर्त चाहते हैं जो जूनिट धारणाओं को देखें।

http://junit.sourceforge.net/javadoc/org/junit/Assume.html

यह एक शर्त पर देख रहे हैं और केवल परीक्षण चलाने के लिए करता है, तो उस शर्त पूरी होने के लिए आगे बढ़ने से काम करता है। यदि स्थिति गलत है तो परीक्षण प्रभावी रूप से "अनदेखा" होता है।

यदि आप इसे एक सहायक वर्ग में डालते हैं और इसे अपने कई परीक्षणों से बुलाया जाता है तो आप इसे जिस तरीके से चाहते हैं उसका प्रभावी ढंग से उपयोग कर सकते हैं। उम्मीद है की वो मदद करदे।

+0

मुझे यकीन नहीं है कि ओपी क्या चाहता है, लेकिन यह वही है जो मैं चाहता था, धन्यवाद! – Michael

संबंधित मुद्दे

 संबंधित मुद्दे