Junit 4.13:套件套件-如何在套件之间创建依赖关系

时间:2020-05-14 15:48:43

标签: java junit4 junit-runner

我必须创建一个由Junit @Category注释拆分的两个测试套件,以使测试能够针对“ dev-prod”和“ test”目录分别运行。我特别不喜欢这种解决方案,但是由于我正在处理的代码库的局限性,部分解决方案迫使我这样做。但是我现在有两个名为UsingProdDictionariesTestSuiteUsingTestDictionariesTestSuite的JUnit测试套件。

我创建了一套同时运行两个套件的整体套件UsingAllDictionariesTestSuite。问题是它们必须单独运行,即我希望UsingTestDictionariesTestSuite中的所有测试在启动UsingProdDictionariesTestSuite之前完成...这就是首先将它们分开的全部原因。可以强制执行吗?

其背景如下, 使用系统环境变量来设置测试类,以说明测试应针对“ Dev-Prod”目录还是针对“ Test”目录运行。因为JUnit不允许您控制执行测试的顺序-我在尝试运行所有测试时遇到了失败的测试,因为针对Dev-Prod的某些测试是针对Test的设置执行的(并且反之亦然)。当我分别运行测试时,它们都可以通过。

我的套房套件类如下所示,并且运行正常,除了由于上述交叉执行而导致测试失败之外,

package testsuite;

import org.junit.runner.RunWith;
import org.junit.runners.Suite;

@RunWith(Suite.class)
@Suite.SuiteClasses({UsingTestDictionariesTestSuite.class,UsingProdDictionariesTestSuite.class})
public class UsingAllDictionariesTestSuite {
}

0 个答案:

没有答案