2011-09-07 9 views
19

का उपयोग कर एक विशिष्ट पैकेज में सभी परीक्षण JUnit4 में यह संभव है?JUnit4 चलाने एक testsuite

JUnit3 में, मैं निम्नलिखित करना होगा:

public class MyTestSuite { 

    public static Test suite() throws Exception { 
    doBeforeActions(); 

    try { 
     TestSuite testSuite = new TestSuite(); 
     for(Class clazz : getAllClassesInPackage("com.mypackage")){ 
      testSuite.addTestSuite(clazz); 
     } 
     return testSuite; 
    } finally { 
     doAfterActions 
    } 
    } 

... 

} 
+0

क्या आपने इसे जूनिट 4 के साथ चलाने का प्रयास किया है? – bbaja42

+0

@ bbaja42 मैं इसे जूनिट 4 के साथ नहीं चलाना चाहता, मैं अपने परीक्षणों के लिए जूनिट 4 एनोटेशन का उपयोग करना चाहता हूं और टेस्टुइट का उपयोग करके उन सभी को चला सकता हूं। – Fortega

+1

इस प्रश्न का एक "वास्तविक" जवाब अच्छा होगा। किसी भी तरह, ग्रहण JUnit रन कॉन्फ़िगरेशन पैनल में एक छोटे से चेकबॉक्स पर क्लिक करके इसे पूरा करने में सक्षम है। – djangofan

उत्तर

17

The takari-cpsuite (मूल रूप से Johannes Link द्वारा विकसित) एक classpath-सूट जो आपकी आवश्यकताओं को चाहिए प्रदान करता है। यह रेगुलर एक्सप्रेशन से क्लासपाथ में कक्षाओं की छानने की अनुमति देता है:

import org.junit.extensions.cpsuite.ClasspathSuite.*; 
... 
@ClassnameFilters({"mytests.*", ".*Test"}) 
public class MySuite... 
+0

क्या यह बिना किसी '@ रनविथ' एनोटेशन के काम करेगा? – Dims

12

आप उपयोग कर सकते हैं JUnitToolBox:

@RunWith(WildcardPatternSuite.class) 
@SuiteClasses("**/*Test.class") 
public class MySuite { 
} 

Maven config:

<dependency> 
<groupId>com.googlecode.junit-toolbox</groupId> 
<artifactId>junit-toolbox</artifactId> 
<version>1.5</version> 
</dependency> 

अधिक जानकारी के लिए https://code.google.com/p/junit-toolbox/ देखते हैं।

+0

यह कोशिश की, लेकिन काम नहीं करता मैं "स्कैन करने में विफल ..." त्रुटि प्राप्त कर रहा हूं। – SobiborTreblinka

+0

यह केवल अपने फ़ोल्डर और उपफोल्डर में संकुल स्कैन कर सकता है। तो आपको कॉम में ऑलटेस्ट सूइट बनाना होगा। [YourCompany]। वैसे भी। यह कॉन्फ़िगरेशन ("**/* Test.class") मानता है कि आपके सभी टेस्ट क्लास "टेस्ट" में समाप्त होते हैं। – borjab

+1

सावधान रहें यदि परीक्षण एक जार में पैक किया जाता है तो यह काम नहीं करता है। इसे हल करने के लिए एक खुला अनुरोध है। https://code.google.com/p/junit-toolbox/issues/detail?id=2 – EstebanGarciaAlonso

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