[英]How to filter JUNIT Tests that are called from eclipse by source path
假设我在Eclips项目中有一组源文件夹:
MyProject
base/src/impl
base/src/test
common/src/api
common/src/test
common/src/junit
请注意,这些不是包,它们是源文件夹,每个包内都有一个包层次结构,它们可以是相同的。 假设我在base / src / impl文件夹中有一个类com.foo.myproject.DoSomething,我可能在base / src / Test文件夹中有一个名为com.foo.myproject.DoSomethingTest的Test,也许是com.foo .myproject.DoSomethingUnitTest在同一包层次结构下的另一个源文件夹中。
我需要做的是运行某些源文件夹下的所有测试。 也许所有这些都在junit文件夹中,但没有来自测试文件夹。
这可以通过带有junit搜索模式的Ant工作得很好,例如:
<include name="**/src/junit" />
但是,我希望能够从Eclipse获得完全相同的运行配置,而无需调用Ant。 由于已经有很多项目,包和数千个测试类,我正在寻找一种“懒惰”的方式来完成这项工作,这意味着,无需更改项目结构或必须保留复杂的测试套件。
我尝试过的一种方法是使用ClasspathSuite使用的org.springframework.core.io.support.PathMatchingResourcePatternResolver
,但是在classpath中查找资源总是在一个单独的类位置查看合并的源文件夹,所以我无法过滤在我打算做的水平上。
我正在寻找两种方法:
1. Filter using some TestSuite
2. Filter using some JUNIT Runner Plugin in Eclipse (is there any that can do what I need?)
谢谢!
这是一个似乎可以满足你想要的项目:
查找“Classpath属性注释”以设置从中进行测试的文件夹。
此外,如果您的测试类确实被命名为接缝到(所有单元测试类都具有后缀UnitTest),那么您还可以使用@ClassnameFilters
注释。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.