2012-04-30 21 views
6

Czy jest możliwe uruchomienie predefiniowanego pakietu xml z wiersza poleceń przez maven?TestNG surefire, uruchom pakiet z maven linii poleceń

Jestem w stanie przeprowadzić zajęcia lub określony test. Ale nie mogę uruchomić pakietu.

Oto co mam uruchomiony z wiersza poleceń: ->

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

mam zestaw zdefiniowaną, która biegnie przez IntelliJ ładnie, ale nie jestem pewien, jak wywołać pakiet. plik xml.

Lub na przykład, po uruchomieniu testów testng tworzy plik testng-failed, który jest skonfigurowany do ponownego uruchamiania wszystkich nieudanych testów.

Używając mvn, jak mógłbym uruchomić ten zestaw testów.

+0

Znalazłem odpowiedź tutaj: http://stackoverflow.com/questions/11762801/run-junit-suite-using-maven-command – Philippe

Odpowiedz

5

Zwykle nie potrzebujesz niczego specjalnego w związku z TestNG. Po prostu użyj wtyczki maven-surefire:

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

i na tej podstawie powinny zostać uruchomione wszystkie testy poprawnie opisane. Ach oczywiście trzeba zależność do TestNG takiego:

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

Zwykle nie chciałbym tworzyć zestawy testów już, bo ten punkt, który trzeba utrzymać, który jest często brakowało zaktualizować itp wystarczy użyć adnotacji.

Jeśli chcesz uruchomić konkretny zestaw testów, po prostu zdefiniuj plik testng.xml w src/test/resources i odpowiednio popraw konfigurację 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> 

pracował dla mnie.

+0

Zrobiłem to samo, ale niestety to nie zadziałało –

14

Ta odpowiedź dała mi to, czego szukał, a mianowicie zdolność przechodzenia w wierszu poleceń nazwę pakietu chcę uruchomić:

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

W skrócie, dodać następujące maven-plugin-surfire strofa Twojego pom.xml:

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

Następnie można określić żądany plik xml TestNG apartament w wierszu poleceń:

mvn clean install test -DsuiteXmlFile=testngSuite.xml 
Powiązane problemy