如何在Eclipse

时间:2015-05-09 15:44:18

标签: java maven debugging maven-surefire-plugin

我正在尝试在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>

1 个答案:

答案 0 :(得分:2)

正如khmarbaise已经提到的那样,抛弃了maven部分,只是从eclipse本身运行测试。

选择包含TestNG测试的软件包后,您要使用的密钥组合是: Alt + Shift + D 名词

要调试JUnitTests,请将N替换为T

关于保留当前功能:要将监听器附加到testng测试套件,请使用@Listeners-Annotation,您可以在其中附加多个实现ITestNGListener的类来收听您的套件。

请注意,ITestNGListener只是一个标记界面,没有其他功能。

对于定义的systemPropertyVariables:您应该能够在testng运行(和调试)配置中附加它们。