我已经写了大量测试,不仅将其划分为单独的类,而且还根据应用程序测试的区域将其分为独立的子包。所以,我的包结构看起来有点像这样:按指定顺序运行JUnit4测试类
my.package.tests
my.package.tests.four
my.package.tests.one
my.package.tests.three
my.package.tests.two
在my.package.tests
包我有一个父类,一到四在子包中的所有测试扩展。现在,我想选择测试运行的顺序;不在类内(这似乎可能与FixMethodOrder annotation),但类或子包本身的顺序(所以那些在子包one
第一,然后那些在two
,等)。有些测试课程使用Parameterized runner,以防万一。选择顺序不是测试成功所必需的,它们是相互独立的;但将它们排序以反映程序各部分的顺序通常会有所帮助,因为它使分析变得更容易一些。
现在,理想情况下,我希望有一些配置文件告诉JUnit应该在哪个顺序执行测试;但我猜测它不会那么容易。我在这里有哪些选项,什么是最简单的选项?我还希望只列出子包,而不是包中的各种类,甚至是类中的测试函数。
我在使用Java 1.6.0_26(我没有选择)和JUnit 4.11。
谢谢,这就像一个魅力!我想有没有选项以某种方式告诉它“运行下列软件包中的所有测试”,对吗? – blalasaadri
不,你不能自动告诉它包含所有的类(AFAIK,至少)。 – blgt
这里的一般想法是你可以在每个包中放置一个Suite类,它将包含该包中的所有测试,然后将“父”套件放置在父包中,并将其包含在其中,这样您就可以模拟Suite类中的包层次结构。 – blgt