软件测试与调试技术研究
作者:网络转载 发布时间:[ 2010/9/15 14:47:22 ] 推荐标签:
JUnitPer的负载测试
在任何项目的计划编制阶段,你必须给出项目完成后的系统性能标准。通过使用JUnitPer对已存在的JUnit测试用例进行装饰,你便能够确定目前系统达到了性能标准。
JUnitPer中有两个主要的测试类型:定时测试和负载测试,分别定义在TimedTest类和LoadTest类中,后面将会用到他们。
二、实践中的应用
使用JUnit进行单元测试
如论述中所说,用户的测试类必须继承自TestCase或者TestSuite类,其中TestCase用于单个测试,TestSuite用于多个测试(类似于Vector结构)
在Eclipse中使用JUnit测试
所使用文件来自于JUnit测试用例。下面是摘要:
package junit.samples;
import junit.framework.*;
/**
* TestSuite that runs all the sample tests
*
*/
public class AllTests {
public static void main (String[] args) {
junit.textui.TestRunner.run (suite());
}
public static Test suite ( ) {
TestSuite suite= new TestSuite("All JUnit Tests");
suite.addTest(VectorTest.suite());
suite.addTest(new TestSuite(junit.samples.money.MoneyTest.class));
suite.addTest(junit.tests.AllTests.suite());
return suite;
}
}
使用Cactus进行容器服务测试
用户需要继承ServletTestCase,对被测试类进行测试。如下所示:
被测试类 SampleServlet.java
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
public class SampleServlet extends HttpServlet
{
public void saveToSession(HttpServletRequest request)
{
String testparam = request.getParameter("testparam");
request.getSession().setAttribute("testAttribute", testparam);
}
测试类 TestSampleServlet.java
import junit.framework.Test;
import junit.framework.TestSuite;
import org.apache.cactus.ServletTestCase;
import org.apache.cactus.WebRequest;
public class TestSampleServlet extends ServletTestCase
{
public TestSampleServlet(String theName)
{
super(theName);
}
public static Test suite()
{
return new TestSuite(TestSampleServlet.class);
}
public void beginSaveToSessionOK(WebRequest webRequest)
{
webRequest.addParameter("testparam", "it works!");
}
public void testSaveToSessionOK()
{
SampleServlet servlet = new SampleServlet();
servlet.saveToSession(request);
assertEquals("it works!", session.getAttribute("testAttribute"));
}
}

sales@spasvo.com