2012-04-30 23 views
6

के साथ रन सूट मैवेन के माध्यम से कमांड लाइन से पूर्वनिर्धारित एक्सएमएल सूट चलाने के लिए संभव है?टेस्टएनजी surefire, मेवेन कमांड लाइन

मैं कक्षा या एक विशेष परीक्षण चलाने में सक्षम हूं। लेकिन मैं एक सूट चलाने में असमर्थ हूं।

यहाँ मैं कमांड लाइन से चल रहा है: ->

mvn -Dtest=TestCircle#mytest -Denvironment=test -Dbrowser=firefox -DscreenShotDirectory=/Users/jeremy/temp test 

मैं एक सूट में परिभाषित किया गया है, जो IntelliJ के माध्यम से अच्छी तरह से चलाता है की क्या ज़रूरत है, लेकिन मुझे यकीन है कि सूट आह्वान करने के लिए कैसे नहीं हूँ। एक्सएमएल फ़ाइल।

या उदाहरण के लिए, परीक्षण चलाने के बाद, testng एक testng-fail फ़ाइल बनाता है जो सभी असफल परीक्षणों को फिर से चलाने के लिए सेटअप है।

एमवीएन का उपयोग करके, मैं इस परीक्षण सूट को कैसे लाऊंगा।

+0

मुझे यहां जवाब मिला: http://stackoverflow.com/questions/11762801/run-junit-suite-using-maven-command – Philippe

उत्तर

5

आमतौर पर आपको TestNG के साथ संबंध में विशेष कुछ भी नहीं चाहिए।

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-surefire-plugin</artifactId> 
    <version>2.12</version> 
    </plugin> 

और कहा कि सभी टेस्ट जो सही ढंग से एनोटेट चलाना चाहिए के आधार पर: बस Maven-अचूक-प्लगइन का उपयोग। आह बेशक आप इस तरह TestNG करने के लिए एक निर्भरता की जरूरत है:

<dependency> 
    <groupId>org.testng</groupId> 
    <artifactId>testng</artifactId> 
    <version>6.5.2</version> 
    <scope>test</scope> 
</dependency> 

आमतौर पर मैं टेस्ट सूट अब और नहीं बनाता, क्योंकि यह एक बिंदु है जो आप को बनाए रखने की है जो अक्सर अद्यतन करने के लिए आदि सिर्फ व्याख्या का उपयोग याद किया जाता है।

यदि आपको परीक्षणों का एक विशेष सूट चलाने की आवश्यकता है तो बस test/test/संसाधनों में testng.xml फ़ाइल को परिभाषित करें और उचित रूप से maven-surefire plugin की कॉन्फ़िगरेशन को बढ़ाएं।

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-surefire-plugin</artifactId> 
    <version>2.12</version> 
    <configuration> 
     <suiteXmlFiles> 
     <suiteXmlFile>src/test/resources/testng.xml</suiteXmlFile> 
     </suiteXmlFiles> 
    </configuration> 
    </plugin> 
4
<build> 
<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-surefire-plugin</artifactId> 
    <version>2.12</version> 
    <configuration> 
     <suiteXmlFiles> 
     <suiteXmlFile>src/test/resources/testng.xml</suiteXmlFile> 
     </suiteXmlFiles> 
    </configuration> 
    </plugin> 
</build> 

यह मेरे लिए काम किया।

+0

मैंने वही किया, लेकिन दुर्भाग्यवश यह काम नहीं किया –

14

इस उत्तर मुझे दिया है कि मैं क्या, के लिए देख रहा था अर्थात् आदेश पंक्ति पर सूट का नाम मैं चलाना चाहते हैं पारित करने की क्षमता:

http://www.vazzolla.com/2013/03/how-to-select-which-testng-suites-to-run-in-maven-surefire-plugin/

संक्षेप में, के लिए निम्न जोड़ने अपने pom.xml की Maven-surfire-प्लगइन छंद:

:

<suiteXmlFiles> 
    <suiteXmlFile>${suiteXmlFile}</suiteXmlFile> 
</suiteXmlFiles> 

तो फिर तुम आदेश पंक्ति पर वांछित TestNG सूट xml फ़ाइल निर्दिष्ट कर सकते हैं