के बाद यह एक वर्ग है कि एक विधि @Before
साथ एनोटेट है में एक JUnit @Test
विधि को चलाने के लिए, लेकिन केवल इस परीक्षण के लिए @Before
विधि की अनदेखी करना संभव है?भागो JUnit @Test @ पर ध्यान नहीं देता है कि इससे पहले कि/@
संपादित करें: मुझे दिलचस्पी है यदि जुनीट इस कार्यक्षमता का समर्थन करता है, कामकाज नहीं। मैं किसी अन्य वर्ग में परीक्षण (ओं) को स्थानांतरित करने या एनोटेशन को हटाने और मैन्युअल रूप से प्रत्येक परीक्षण विधि में setUp()
पर कॉल करने जैसे कामकाज से अवगत हूं।
मान लीजिए कि कक्षा में 30 परीक्षण हैं, और उनमें सेवास्तव में परीक्षण प्रारंभिकीकरण को सरल बनाते हैं, लेकिन उनमें से एक (या एक से अधिक) बेकार है/यह चीजों को जटिल बनाता है।
public class MyTestClass {
@Before
public void setUp() {
//setup logic
}
@Test
public void test1() {
//[...]
}
@Test
public void test2() {
//[...]
}
//more tests here
@Test(ignoreBefore = true, ignoreAfter = true //false by default)
//something equivalent to this
public void test20() {
//[...]
}
}
क्या आप अलग-अलग कक्षा में '@ पहले' और '@ के बाद एनोटेशन के बिना 'test20' ले जा सकते हैं? – user1516873
@ user1516873 तकनीकी रूप से हां, लेकिन मैं एक टेस्ट क्लास में कक्षा के लिए सभी परीक्षण रखना चाहता हूं। जब कक्षा को डिजाइन/विकसित किया गया था, परीक्षण का सम्मान नहीं किया गया था और रिफैक्टरिंग एक समाधान नहीं है। इसके अलावा, यूनिट परीक्षणों की परिभाषा का कहना है कि वे स्वतंत्र हैं और अलग से चलाए जा सकते हैं। – m3th0dman