【发布时间】:2013-03-08 10:56:13
【问题描述】:
在我的代码中,我有两种类型的测试:快速单元测试和慢速性能测试。我试图确保性能测试永远不会运行,除非用户明确想要运行它们(例如,使用正确的测试套件或 maven 构建配置文件),因为这会触发一个在网格上计算密集型的远程进程。
我了解如何使用 maven-surefire-plugin 创建排除(或包含)特定测试的构建配置文件,如site 中所述。然而,我遇到的问题是我还没有找到一种从默认运行中排除测试的方法,同时仍然提供在需要时运行测试的选项。默认运行我的意思是:
- 在eclipse中右键项目,选择“run as|Maven test”
- 右键点击src/test/java,选择run as junit test
在上述两种情况下,它都会运行所有单元测试(包括我希望默认排除的慢速测试)。如果我尝试运行的构建配置文件中存在拼写错误,也会发生同样的情况。
有没有一种方法可以从默认运行中排除性能测试,而不必将它们移动到单独的 maven 模块?
【问题讨论】:
-
类似于this new question,专注于在 IntelliJ/Eclipse 中没有额外的配置来默认排除慢速测试。
标签: unit-testing maven junit maven-surefire-plugin