Java 如何在Eclipse中调试maven surefire测试
我正试图在eclipse中调试我的Maven Surefire测试套件。我正在使用TestNg作为测试运行程序。我可以从终端运行此命令,然后在Eclipse中启动“远程Java应用程序”进行调试:Java 如何在Eclipse中调试maven surefire测试,java,maven,debugging,maven-surefire-plugin,Java,Maven,Debugging,Maven Surefire Plugin,我正试图在eclipse中调试我的Maven Surefire测试套件。我正在使用TestNg作为测试运行程序。我可以从终端运行此命令,然后在Eclipse中启动“远程Java应用程序”进行调试: mvn清理测试-Dmaven.surefire.debug-Dclass=com.myTests.SampleTestClass 是否可以在Eclipse中将调试配置设置为,这样我就可以直接从Eclipse进行调试,而不必在terminal中运行命令 这是我在Pom.xml中的maven surefi
mvn清理测试-Dmaven.surefire.debug-Dclass=com.myTests.SampleTestClass
是否可以在Eclipse中将调试配置设置为,这样我就可以直接从Eclipse进行调试,而不必在terminal中运行命令
这是我在Pom.xml中的maven surefire设置
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.17</version>
<configuration>
<systemPropertyVariables>
<my_property>${my_property}</my_property>
</systemPropertyVariables>
<properties>
<property>
<name>listener</name>
<value>com.myPackage.TestListener</value>
</property>
</properties>
</configuration>
</plugin>
</plugins>
org.apache.maven.plugins
maven surefire插件
2.17
${my_property}
听众
com.myPackage.TestListener
正如前面提到的,放弃maven部分,只需从eclipse本身运行测试
选择包含TestNG测试的包后,您要使用的组合键是:Alt+Shift+D,N
要调试JUnitTests,请将N替换为T
至于保留当前功能:要将侦听器附加到您的testng testsuite,请使用,其中可以附加多个实现ITestNGListener
的类来侦听您的套件
请注意,ITestNGListener只是一个标记接口,没有其他功能
对于定义的
systemPropertyVariables
:您应该能够在testng运行(和调试)配置中附加它们。单击类->运行方式->JUnit测试,或者在您的情况下单击类->运行方式->testng测试?或者如果你想调试它。Debus As而不是“Run As”…Maven是我项目的一部分,有几个原因,我不想跳过这一部分,我知道,但你想调试测试,而不是Maven surefire插件或Maven本身?如果你有一些部分不工作,如果你从Eclipse中作为测试启动它们,你就做错了。你能给出你正在做什么的信息吗?当然,你必须给出在Eclipse中运行测试的参数。这是可以做到的。。。。但真正的问题是:你为什么需要这样的倾听者?除此之外,listners还可以通过注释来定义。所以我看不出有什么问题?我不想放弃专业的部分。Maven是我项目的一部分,因为它处理一些设置,如果我以TestNG或JUnit测试的形式运行,则无法获得这些设置。请提前将这些信息添加到您的问题中。我不知道你需要一些设置。。。再一次,我认为依赖maven进行测试设置可能是错误的,但我没有足够的信息来建议可能更好的替代方案。。。呃,我应该使用test-ng@Listeners注释。