我需要从另一个程序执行maven测试,在本例中是HP QC / ALM。我想执行特定的测试,所以我写了一个如下所示的.bat文件:
cd C:\myPath\
call mvn -Dtest=myPackage.MyTestClass test
call mvn -Dtest=myPackage.MyOtherTest test
首先,我调用pom.xml文件所在的路径。即使.bat文件位于同一目录中,也需要这样做。
第二,我正在使用多种测试方法调用TestCase
- 类的特定扩展。我正在使用JUnit 3。
第三,我打电话给另一个特定的TestCase
- 班级。
第一个TestCase按预期执行。我的问题是第一个TestCase后执行停止。 call
关键字应该强制执行继续,但这里没有效果。测试成功与否也没有任何区别。
我似乎找不到任何其他建议而不是call关键字来解决这个问题。我用错了吗?有谁知道为什么它不起作用?我可以尝试其他解决方案或建议吗?
更新附加信息:
命令行执行在以下输出后停止:
Tests run: 11, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 82.964 sec
Results :
Tests run: 11, Failures: 0, Errors: 0, Skipped: 0
这是myPackage.MyTestClass
答案 0 :(得分:0)
the way i use for run specific suite of test cases is:
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0"> .... <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.18.1</version> <configuration> <parallel>methods</parallel> <threadCount>10</threadCount> <suiteXmlFiles> <suiteXmlFile>src/test/java/login/suite001</suiteXmlFile> <suiteXmlFile>src/test/java/other/suite002</suiteXmlFile> </suiteXmlFiles> </configuration> </plugin> </plugins> </build> </project>
<?xml version='1.0' encoding='UTF-8' ?> <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" > <suite name="suite100LoginCliente" verbose="1" > <test name="testName001" > <packages> <package name="login" /> </packages> </test> </suite>
@echo off cls echo Welcome to . cd C:\blabla\mavenProyect call mvn test echo Press anything to exit :D Pause>Nul
That's all i know until now. If you found a better for way do this, please let know ;)