不一样的思想~~
http://shop34712791.taobao.com
MSN:wins0910@hotmail.com
发布新日志
-
2007-09-05 23:23:38
junitbook.coarse
1、JettySample.java:
package junitbook.coarse;
import org.mortbay.http.HttpContext;
import org.mortbay.http.HttpServer;
import org.mortbay.http.SocketListener;
import org.mortbay.http.handler.ResourceHandler;
public class JettySample{
public static void main(String[] args) throws Exception
{
HttpServer server = new HttpServer();
SocketListener listener = new SocketListener();
listener.setPort(8080);
server.addListener(listener);
HttpContext context = new HttpContext();
context.setContextPath("/");
context.setResourceBase("./");
context.addHandler(new ResourceHandler());
server.addContext(context);
server.start();
}
}
---
junitbook.coarse.try1
1、TestWebClient1.java:
package junitbook.coarse.try1;
import java.net.*;
import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
public class TestWebClient1 extends TestCase
{
public static Test suite()
{
TestSuite suite = new TestSuite();
suite.addTestSuite(TestWebClient1.class);
return new TestWebClientSetup1(suite);
}
public void testGetContentOk() throws Exception
{
WebClient client = new WebClient();
String result = client.getContent(new URL("http://localhost:8080/testGetContentOk"));
assertEquals("It works",result);
}
public void testGetContentNotFound()throws Exception
{
WebClient client = new WebClient();
String result = client.getContent(new URL("http://localhost:8080/testGetContentNotFound"));
assertNull(result);
}
}
2、TestWebClientSetup1.java:
package junitbook.coarse.try1;
import java.applet.*;
import java.io.*;
import java.rmi.server.*;
import org.mortbay.http.*;
import org.mortbay.http.handler.AbstractHttpHandler;
import org.mortbay.http.handler.ResourceHandler;
import org.mortbay.util.ByteArrayISO8859Writer;
import junit.extensions.*;
import junit.framework.*;
public class TestWebClientSetup1 extends TestSetup{
protected static HttpServer server;
public TestWebClientSetup1(Test suite)
{
super(suite);
}
protected void setUp() throws Exception
{
HttpServer server = new HttpServer();
SocketListener listener = new SocketListener();
listener.setPort(8080);
server.addListener(listener);
HttpContext context1 = new HttpContext();
context1.setContextPath("/");
context1.setResourceBase("./");
context1.addHandler(new ResourceHandler());
server.addContext(context1);
HttpContext context2 = new HttpContext();
context2.setContextPath("/");
context2.setResourceBase("./");
context2.addHandler(new ResourceHandler());
server.addContext(context2);
server.start();
}
protected void tearDown() throws Exception
{
server.stop();
}
// public void testGetContent() throws Exception
// {
// WebClient client = new WebClient();
// String result = client.getContent(new URL("http://localhost:8080/testGetContentOk"));
// assertEquals("It works",result);
// }
private class TestGetContentOkHandler extends AbstractHttpHandler
{
public void handle(String pathInContext,String pathParams,HttpRequest request,HttpResponse response) throws IOException{
OutputStream ōut = response.getOutputStream();
ByteArrayISO8859Writer writer = new ByteArrayISO8859Writer();
writer.write("It works");
writer.flush();
response.setIntField(HttpFields.__ContentLength,writer.size());
writer.writeTo(out);
out.flush();
request.setHandled(true);
}
}
public abstract class TestGetContentServerErrorHandler extends AbstractHttpHandler{
public void handler(String pathInContext,String pathParams,HttpRequest request,HttpResponse response) throws IOException{
response.sendError(HttpResponse.__503_Service_Unavailable);
}
}
}
查看(502)
评论(0)
收藏
分享
管理
-
2007-08-07 09:28:57
如题
性能测试是综合技术能力的考量,是结合硬件、应用、服务、网络、代码、业务和数据的逻辑分析等等的全方位的衡量。LR只提供了一些方法,这些方法是用工具的形式表现出来,我们不能只看到形而忽略了意,最终发现,通过以上综合考量,才能对应用软件作全方位的性能评估。在初期,我们不可能大而全,而是重点突击某一些衡量指标,越到最后发现,所有的指标都有其关联性,从而提高的是软件系统的可用性、可扩展性。我的blog不多,但不需要太多外界的拷贝粘贴,只希望能引领一种思路。呵呵
查看(704)
评论(3)
收藏
分享
管理
-
2007-08-04 00:19:03
当然也可以自己写程序测试web service,这样既可以生成客户端代码也可以生成服务器端代码,结合Junit,Ant很方便的实现自动化测试.通用的java类库有Axis 和 Xfire,可以根据不同需要选择版本.
以Axis1.4为例,生成服务器端代码用一下命令
java -cp .;.\lib\axis.jar;.\lib\axis-ant.jar;.\lib\axis-schema.jar;.\lib\commons-discovery-0.2.jar;.\lib\commons-logging-1.0.4.jar;.\lib\jaxrpc.jar;.\lib\log4j-1.2.8.jar;.\lib\saaj.jar;.\lib\wsdl4j-1.5.1.jar;.\lib\activation.jar;.\lib\mail.jar; org.apache.axis.wsdl.WSDL2Java --server-side --skeletonDeploy true XXXX.wsdl
客户端代码
java -cp .;.\lib\axis.jar;.\lib\axis-ant.jar;.\lib\axis-schema.jar;.\lib\commons-discovery-0.2.jar;.\lib\commons-logging-1.0.4.jar;.\lib\jaxrpc.jar;.\lib\log4j-1.2.8.jar;.\lib\saaj.jar;.\lib\wsdl4j-1.5.1.jar;;.\lib\activation.jar;.\lib\mail.jar; org.apache.axis.wsdl.WSDL2Java -client XXXX.wsdl
deploy服务器
java -cp .;.\lib\axis.jar;.\lib\axis-ant.jar;.\lib\axis-schema.jar;.\lib\commons-discovery-0.2.jar;.\lib\commons-logging-1.0.4.jar;.\lib\jaxrpc.jar;.\lib\log4j-1.2.8.jar;.\lib\saaj.jar;.\lib\wsdl4j-1.5.1.jar; org.apache.axis.client.AdminClient -lhttp://localhost:8080/axis/services/AdminService deploy.wsdd
查看(323)
评论(0)
收藏
分享
管理