我无法调试,因为跳过了断点。它工作得更早,但几天后就没有了。不确定可能发生了什么。我从Intellij 14.1.4更新到15.02,但问题仍然存在。我运行/调试测试代码的方式是通过提供工作目录和命令行clean install test -DforkCount=0
Intellij 14.1.4,15.02
OS X 10.10.4
Apache Maven 3.3.3
使用maven surefire插件
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.9</version>
<configuration>
<systemProperties>
<property>
<name>org.uncommons.reportng.escape-output</name>
<value>false</value>
</property>
</systemProperties>
<redirectTestOutputToFile>false</redirectTestOutputToFile>
<!-- reportng -->
<properties>
<!--Adding for reportng begin-->
<property>
<name>usedefaultlisteners</name>
<value>false</value>
</property>
<property>
<name>listener</name>
<value>org.uncommons.reportng.HTMLReporter, org.uncommons.reportng.JUnitXMLReporter</value>
</property>
<!--Adding for reportng end-->
</properties>
<!-- end of reportng -->
<suiteXmlFiles>
<suiteXmlFile>${suiteXmlFile}</suiteXmlFile>
</suiteXmlFiles>
<systemPropertyVariables>
<config>${test.config}</config>
</systemPropertyVariables>
</configuration>
</plugin>
<dependency> <groupId>org.testng</groupId> <artifactId>testng</artifactId> <version>6.9.6</version> </dependency>
我只在本地调试。 我想调试的测试是在suite.xml中,我也在使用TestNG。 我可以通过右键单击并运行/调试TestNG测试用例来运行,但我也想使用maven配置进行调试,尽管我可以使用maven配置运行良好。
请注意: 使用右键单击类文件进行调试(通常为TestNG测试用例e.t.c完成)与调试不同,点击顶部选择所需的配置(在我的情况下,我曾选择创建的Maven配置)
答案 0 :(得分:2)
断点仅在您通过intellij本地运行时才有效,或者b)您使用intellij作为连接到另一个jvm的远程调试器。如果您正在使用maven来运行单元测试,则您不太可能在intellij中调试它们。
尝试在IntelliJ中运行测试,方法是右键单击测试文件夹,然后选择&#34; Debug测试...&#34;选项。这应该可以很好地打破你的断点。
Maven用于允许您与其他开发人员以及Jenkins和TeamCity等CI / CD工具共享您的项目。它通常不会以您描述的方式用作个人开发过程的一部分。通常我们只是通过IDE运行我们的代码直到它准备就绪,然后我们将它推送到一个中央仓库,这会触发CI使用maven来构建软件并运行测试以确认我们没有破坏任何东西。