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

时间:2010-04-29 17:07:12

标签: 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中的代码。 那么我怎么能解决这个问题呢?还是有其他方法来实现这一点吗? 谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

您无法同时扩展TestCase并使用注释。

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