有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java JUnit测试用例对象实例化

在JUnit测试用例中,是否使用TestCase对象的新(或不同)实例来运行每个测试方法?或者一个实例被用于所有测试

public class MyTest extends TestCase {
  public void testSomething() { ... }
  public void testSomethingElse() { ... }
}

运行此测试时,创建了多少MyTest类的实例

如果可能,提供一个指向文档或源代码的链接,我可以在其中验证行为


共 (2) 个答案

  1. # 1 楼答案

    如果您问这个问题是因为担心数据在构造函数中被初始化和重新初始化,请注意,初始化测试用例数据的指定方法是通过setUp()和tearDown()独占

  2. # 2 楼答案

    每个测试运行都有一个实例。试试看

    public class MyTest extends TestCase {
      public MyTest() { System.out.println("MyTest Constructor");
      public void setUp() { System.out.println("MyTest setUp");
      public void tearDown() { System.out.println("MyTest tearDown");
      public void testSomething() { System.out.println("MyTest testSomething");
      public void testSomethingElse() { System.out.println("MyTest testSomethingElse");
    }
    

    源代码(包括更新版本的源代码——您和我的示例是JUnit3)位于http://www.junit.org