java - JUnit:运行套件和单独运行测试之间有什么区别吗?

标签 java junit

我遇到了问题,一个测试类似乎干扰了我的测试套件中的另一个测试类。

我有一个套件,它执行两个类,一个称为MergeTestSuite.java(这是另一个套件),另一个称为RecordTest.java。 RecordTest 扩展了一个已经由 MergeTestSuite.java 测试过的类

我创建了另一个套件,如下所示:

@RunWith(Suite.class)
@Suite.SuiteClasses( {

   MergeTestSuite.class,
   RecordTest.class

})
public class CoreTestSuite {


   @BeforeClass
   public static void install() throws Throwable {
    RegistryUtils.cleanupResources();
   }
}

MergeTestSuite.class 和 RecordTest.class 单独运行良好。如果我运行 CoreTestSuite,第二个测试将失败,除非我从列表中删除 MergeTestSuite.class。

最佳答案

Junit TestSuite 为多个测试提供了额外的功能。例如,您可以控制测试运行的顺序,也可以将多个测试套件组合到另一个套件中。我认为这个older doc from Junit 3.1.8描述得最好。

关于java - JUnit:运行套件和单独运行测试之间有什么区别吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22411891/

相关文章:

java - 使用 long 计算素数 (Java)

java - Java 语言 Codeship 中的设置和测试命令

junit - JSR :352 Unit testing Java Batch Code?

java - 小型 java 项目成长(maven 和 junit)

Java-Junit/断言失败错误 : No test in XXX

java - 当我们说世界 "public"可以访问访问修饰符 "in java"时,我们是什么意思?

java - 需要带引号的字符串(位置 :DOCDECL @1:50 in java. io.StringReader@4327b040) - Android

java - 将 TextView 动态添加到 ArrayList 中的自定义适配器

java - 如何使用 selenium web 驱动程序获取特定 optgroup 下的选项?

unit-testing - 在其自己的 JVM 中与每个测试类并行收集并运行所有 junit 测试(按类并行化,而不是按方法并行化)