Jmeter是否支持Junit测试套件?
这个问题困扰了我好几天,测试用例无论是junit 3还是4的样式都运行良好。但是测试套件无论如何都是愚蠢的。
有什么建议吗?
我的代码如下:
public class LoginLogout extends TestCase {
private static Logger log = Logger.getLogger(LoginLogout.class);
public static Test suite() {
try{
log.info("test suite start!");
TestSuite suite = new TestSuite(LoginLogout.class.getName());
//$JUnit-BEGIN$
suite.addTestSuite(Login.class);
suite.addTestSuite(Logout.class);
return new TestSetup(suite) {
protected void setUp(){
log.info("test suite setup!");
}
protected void tearDown(){
log.info("test suite finished!");
}
};
}catch(Exception e){
log.error(e.getMessage());
}
return null;
}
}
public class Login extends TestCase {
private static Logger log = Logger.getLogger(Login.class);
@Test
public void testLogin() throws Exception {
log.info("login start!");
log.info("login end!");
}
}
public class Logout extends TestCase {
private static Logger log = Logger.getLogger(Logout.class);
@Test
public void testLogout() throws Exception {
log.info("logout start!");
log.info("logout end!");
}
}
答案 0 :(得分:1)
您可以转到http://jmeter.apache.org/上的“下载Apache JMeter”页面,然后下载“apache-jmeter-2.8_src.zip”(或当前版本的任何内容)。
解压缩后,在apache-jmeter-2.8_src\apache-jmeter-2.8\src\junit\test
目录下,您可以找到以下java文件(与jmeter版本2.8一样):
对于JUnit4:
AfterAnnotatedTest.java
BeforeAnnotatedTest.java
DummyAnnotatedTest.java
Junit4AnnotationsTest.java
对于JUnit3:
RerunTest.java
SetupTestError.java
SetupTestFail.java
TearDownTestFail.java
您可以在JMeit的JUnit请求(测试计划 - >线程组 - > JUnit请求)的Classname下拉菜单中看到它们。
这些JUnit测试用例默认由JMeter提供,因此我假设他们的代码和工作的简单复制和粘贴应该可以工作;但是,到目前为止,我无法在Classname下拉菜单中看到我的测试用例。
以下是我发现的其他有用链接;但是,它们都没有解决我遇到的当前问题:
答案 1 :(得分:0)
对于JUnit4,套件将是:
@RunWith(Suite.class)
@SuiteClasses({Login.class, Logout.class})
public class LoginLogout {
private static Logger log = Logger.getLogger(LoginLogout.class.getName());
}
TestClass是:
public class Login {
private static Logger log = Logger.getLogger(Login.class.getName());
@Test
public void testLogin() throws Exception {
log.info("login start!");
log.info("login end!");
}
}
为我工作好