Eclipse JUnit4:使用名称模式排除测试
是否可以在 Eclipse 中的 JUnit Run 配置中指定一个名称模式(例如 **/integration/*Test),在运行项目的所有测试时应将其从测试运行中排除?
查看运行/调试配置中的选项,我认为这个问题可以简化为:是否可以排除基于 junit runner 命令行参数的某些测试。
我对创建(和维护) 测试套件。
另一种替代解决方案(尽管仍然对此不感兴趣)是创建包含测试文件的单独目录:
- yourProject/tests
- yourProject/integration-tests
并选择该目录以运行其中的所有测试(或更改“运行所有在选定的项目、包或源文件夹中进行测试”(位于“运行配置”的“测试”选项卡中)。
我正在使用:
- Eclipse 3.5
- JUnit 4
非常感谢任何提示/建议!
Is it possible to specify in the JUnit Run configuration in Eclipse a name pattern (say **/integration/*Test) that should be excluded from the test run when running all tests of a project?
Looking at options in the Run/Debug Configuration I presume this question could be reduced to: is it possible exclude certain tests based on junit runner command line parameters.
I'm not interested in creating (and maintaining) Test Suites.
Another alternative solution (still not interested in that one, though) is to create to separate directories containing test files:
- yourProject/tests
- yourProject/integration-tests
and selecting that directory in order to run all tests in it (or changing the "Run all tests in the selected project, package or source folder" in the Test tab of the Run Configuration).
I'm using:
- Eclipse 3.5
- JUnit 4
Any tips/advice greatly appreciated!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以扩展 Suite 类,覆盖
但不是带注释的类返回您想要的类。我打赌有很多方法可以做到这一点,但我会扫描类路径中的类文件夹,找到其中的所有测试类并忽略您不喜欢的类。 Class.forName 会将名称转换为类。
你甚至可以做 jUnit4 风格的注释
You could extend the Suite class, override
but instead of annotated classes return classes you want. I bet there is a lot of ways to do it, but Id scan the classpath for classes folder, find all test classes inside and ignore the ones you dont like. Class.forName will turn names into Classes.
You could even do jUnit4-style annotation