如何将JUnitPerf与JWebUnit和JUnit 4一起使用?

我对正确运行的Web应用程序进行了一系列function测试,但每个都需要使用@BeforeClass@AfterClass注释提供的类级别设置和拆卸,因此需要JUnit 4.0或更高版本。

现在,我想使用少量的这些function测试来执行负载测试,这些测试模拟了大量请求Web应用程序相关页面的用户。 为了让每个用户在JWebUnit中拥有自己的“模拟浏览器”,我需要在JUnitPerf中使用TestFactory来实例化测试中的类,但由于JUnit 4测试是使用@Test注释而不是从TestCase派生的,所以我’获取TestFactory must be constructed with a TestCase classexceptionTestFactory must be constructed with a TestCase class

是否有人成功使用JUnitPerf及其TestFactory与JUnit 4? 什么是让它全部工作的秘诀?

您需要一个知道JUnit4的TestFactory。 我在下面加了一个。

 import junit.framework.JUnit4TestAdapter; import junit.framework.TestCase; import junit.framework.TestSuite; import com.clarkware.junitperf.TestFactory; class JUnit4TestFactory extends TestFactory { static class DummyTestCase extends TestCase { public void test() { } } private Class junit4TestClass; public JUnit4TestFactory(Class testClass) { super(DummyTestCase.class); this.junit4TestClass = testClass; } @Override protected TestSuite makeTestSuite() { JUnit4TestAdapter unit4TestAdapter = new JUnit4TestAdapter(this.junit4TestClass); TestSuite testSuite = new TestSuite("JUnit4TestFactory"); testSuite.addTest(unit4TestAdapter); return testSuite; } }