我正在使用classpath suite library自动运行项目中的所有测试,效果很好。
@RunWith(ClasspathSuite.class)
@SuiteTypes({RUN_WITH_CLASSES, TEST_CLASSES, JUNIT38_TEST_CLASSES})
@ClassnameFilters({"com.foo.bar.*"})
public class AllTests {
}
但是,每次我运行
AllTests
时,都会出现此错误:java.lang.Exception: class 'com.foo.bar.AllTests' (possibly indirectly) contains itself as a SuiteClass
任何想法如何摆脱这一点?
是的,我已经阅读了JUnit: (possibly indirectly) contains itself as a SuiteClass但没有找到答案,因为无论如何我都不从
AllTests
继承。 最佳答案
只需将您的AllTests
类移动到包com.foo
。
您已经选择了SuiteTypes=RUN_WITH_CLASSES
(并将目标程序包设置为com.foo.bar
),因此您的AllTests
一遍又一遍地运行AllTests
。