我正在尝试在eclipse中调试我的Maven Surefire测试套件。我正在使用TestNg作为测试运行器。我可以从终端运行此命令,然后启动Eclipse中的“远程Java应用程序”进行调试:
mvn clean test -Dmaven.surefire.debug -Dclass=com.myTests.SampleTestClass
是否可以在Eclipse中设置调试配置,以便我可以直接从Eclipse调试而无需在终端中运行命令?
这是我在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>
答案 0 :(得分:2)
正如khmarbaise已经提到的那样,抛弃了maven部分,只是从eclipse本身运行测试。
选择包含TestNG测试的软件包后,您要使用的密钥组合是: Alt + Shift + D , 名词
要调试JUnitTests,请将N替换为T
关于保留当前功能:要将监听器附加到testng测试套件,请使用@Listeners
-Annotation,您可以在其中附加多个实现ITestNGListener
的类来收听您的套件。
请注意,ITestNGListener只是一个标记界面,没有其他功能。
对于定义的systemPropertyVariables
:您应该能够在testng运行(和调试)配置中附加它们。