不一样的思想~~ http://shop34712791.taobao.com MSN:wins0910@hotmail.com

发布新日志

  • stubtest_jetty

    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);
      }
     }
    }

     

  • 学会LR不等于学会性能测试

    2007-08-07 09:28:57

    如题

    性能测试是综合技术能力的考量,是结合硬件、应用、服务、网络、代码、业务和数据的逻辑分析等等的全方位的衡量。LR只提供了一些方法,这些方法是用工具的形式表现出来,我们不能只看到形而忽略了意,最终发现,通过以上综合考量,才能对应用软件作全方位的性能评估。在初期,我们不可能大而全,而是重点突击某一些衡量指标,越到最后发现,所有的指标都有其关联性,从而提高的是软件系统的可用性、可扩展性。我的blog不多,但不需要太多外界的拷贝粘贴,只希望能引领一种思路。呵呵

  • 调ws的一些方法(未消化的)~

    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

232/2<12
Open Toolbar