[英]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.