java - 如何在JunitPerf中使用@BeforeClass和@AfterClass?

标签 java junit junitperf

我想在整个测试套件之前(也在套件之后)执行一些操作。所以我这样写:

public class PerformanceTest extends TestCase {

    @BeforeClass
    public static void suiteSetup() throws Exception {
          //do something
    }

    @AfterClass
    public static void suiteSetup() throws Exception {
          //do something
    }

    @Before
    public void setUp()  throws Exception {
          //do something
    }

    @After
    public void tearDown()  throws Exception {
          //do something
    }

    public PerformanceTest(String testName){
          super(testName);
    }

    public static Test suite() {
          TestSuite suite = new TestSuite();

          Test testcase1 = new PerformanceTest("DoTest1");
          Test loadTest1 = new LoadTest(testcase1, n);

          Test testcase2 = new PerformanceTest("DoTest2");
          Test loadTest2 = new LoadTest(testcase2, n);

          return suite;
    }

    public void DoTest1 throws Throwable{
          //do something
    }

    public void DoTest2 throws Throwable{
          //do something
    }
}

但是我发现它永远不会到达@BeforeClass和@AfterClass中的代码。 那么我该如何解决这个问题呢?或者还有其他方法可以实现这一点吗? 感谢您的帮助。

最佳答案

您不能扩展 TestCase 并同时使用注释。

TestCase 是 JUnit 3 概念,注释是 JUnit 4 概念。

关于java - 如何在JunitPerf中使用@BeforeClass和@AfterClass?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2739302/

相关文章:

java - 查找数组中任何重复的元素

selenium - 如何在cucumber-jvm中的另一个功能中调用一个功能?

java - Easymock:匹配器调用的使用超出预期

spring-boot - Spring Boot中JPA Repository的Save方法的单元测试

java - 使用 JUnitPerf 测试问题

Java多线程同步块(synchronized block)永远循环

java - 我可以使用 @MapsId 为使用 JPA 的多个父级共享一对一实体吗

java - 如何在数组中添加项目?