是否可以在Eclipse的JUnit Run配置中指定一个名称模式(比如**/integration/*Test),在运行项目的所有测试时应该从测试运行中排除?
查看运行/调试配置中的选项我认为这个问题可以简化为:是否可以根据junit runner命令行参数排除某些测试.
我对创建(和维护)测试套件不感兴趣.
另一种替代解决方案(尽管对此仍然不感兴趣)是创建包含测试文件的单独目录:
并选择该目录以运行其中的所有测试(或更改"运行配置"的"测试"选项卡中的"在所选项目,包或源文件夹中运行所有测试").
我正在使用:
任何提示/建议非常感谢!
您可以扩展 Suite 类,覆盖
public Suite(Class klass, RunnerBuilder builder) throws InitializationError {
this(builder, klass, getAnnotatedClasses(klass));
}Run Code Online (Sandbox Code Playgroud)
但不是带注释的类返回您想要的类。我打赌有很多方法可以做到这一点,但我会扫描类路径中的类文件夹,找到其中的所有测试类并忽略您不喜欢的类。Class.forName 会将名称转换为类。
你甚至可以做 jUnit4 风格的注释
@RunWith(IgnoreSuite.class)
@IgnoreTests("integration")
public class NormalTests {
}Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2692 次 |
| 最近记录: |