Tips on HttpUnit

原创 2006年06月10日 21:23:00

Tips on HttpUnit

  1. import package.
    import com.meterware.httpunit.*;
    import junit.framework.*;
  2. Unit test source code of httpunit is primary resource to study how to use it.
    httpunit-1.6.2/test/com/meterware/httpunit
  3. Code fragment which shows how to log in.
    WebConversation     conversation = new WebConversation();
    WebRequest request = new GetMethodWebRequest( "http://localhost/portal" );

    WebResponse response = conversation.getResponse( request );
    WebForm loginForm = response.getForms()[0];
    request = loginForm.getRequest();
    request.setParameter( "user", "user" );
    request.setParameter( "pwd", "password123" );
    response = conversation.getResponse( request );

    assertEquals( "login url", "http://localhost/portal/servlet/login", response.getURL().toString() );
  4. Code fragment which shows how to disable javascript. Some web application does do some bad html which httpunit can't parse correctly.
    WebConversation conversation = new WebConversation();

    //
    // Disabling JavaScript validation
    //
    HttpUnitOptions.setScriptingEnabled(false);

    WebRequest request = new GetMethodWebRequest( "http://localhost" );

    WebResponse response = conversation.getResponse( request );



  5. Code fragment which shows how to get frame.

    String[] frames = response.getFrameNames();
    for ( int i = 0; i < frames.length; i++ )
    {
    System.out.println( "frame[" + i + "]:" + frames[i] );
    }

    WebResponse frameResponse = response.getSubframeContents( "topFrame" );
    // WebResponse frameResponse = response.getSubframeContents( "leftFrame" );
    System.out.println( "mainFrame:" + frameResponse.getURL().toString() );

    WebLink[] links = frameResponse.getLinks();
    for ( int i = 0; i < links.length; i++ )
    {
    System.out.println( "link:" + links[i].getText() + ", url:" +links[i].getURLString() );
    }

    WebResponse menuResponse = getFrameWithURL( conversation, "topmenu" );
    assertNotNull( "topMenu is null", menuResponse );

    links = frameResponse.getLinks();
    for ( int i = 0; i < links.length; i++ )
    {
    System.out.println( "topmenu link:" + links[i].getText() + ", url:" +links[i].getURLString() );
    }

    NOTE: the following methods are from httpunit's own unit test.
    private String getNameOfFrameWithURL( WebConversation wc, String urlString ) {
    String[] names = wc.getFrameNames();
    for (int i = 0; i < names.length; i++) {
    WebResponse candidate = wc.getFrameContents( names[i] );
    System.out.println( "getNameOfFrameWithURL() frame url:" + candidate.getURL().toExternalForm() );
    if (candidate.getURL().toExternalForm().indexOf( urlString ) >= 0) {
    return names[i];
    }
    }
    return null;
    }


    private WebResponse getFrameWithURL( WebConversation wc, String urlString ) {
    String name = getNameOfFrameWithURL( wc, urlString );
    System.out.println( "getFrameWithURL:" + name );
    if (name == null) return null;
    return wc.getFrameContents( name );
    }
  6. Httpunit can't parse iframe's id attribute but name attribute is accepted.

关于网页抓取信息 Jsoup 和 HttpUnit 的使用

之前看了看 洪祥的csdn app 制作,里面有从网页抓取数据的. 之前对这块操作没有接触过,所以网上差了一些资料,现在整理下相关的内容. 首先是关于Jsoup , Jsoup 是网页抓取的首选...
  • u010833696
  • u010833696
  • 2015年05月15日 09:59
  • 1773

httpunit使用示例

import java.io.IOException; import java.net.MalformedURLException; import org.xml.sax.SAXException;...
  • zhongweijian
  • zhongweijian
  • 2012年05月31日 12:16
  • 13527

HttpUnit Ajax处理

转自网络:http://shenbai.iteye.com/blog/1985844  最近写了个爬虫项目,暂时放在github上。https://github.com/shenbaise/g...
  • Working_Harder
  • Working_Harder
  • 2015年09月26日 10:46
  • 1558

HttpUnit学习入门例子

package com.test; import java.io.IOException; import java.net.MalformedURLException; import org.xm...
  • hfhwfw
  • hfhwfw
  • 2014年07月15日 23:39
  • 10329

关闭HttpUnit不支持的JavaScript语句,并查看错误

关闭HttpUnit不支持的JavaScript语句,并查看错误 关闭不支持的JavaScript,并查看错误HttpUnitOptions.setExceptionsThrownOnScriptEr...
  • feiwei
  • feiwei
  • 2004年12月20日 00:41
  • 1619

Maven+HttpUnit测试Servlet

1、编写自己的Servlet 2、在pom.xml中添加依赖 httpunit httpunit 1.7 test 3、开发测试用例 // 创建Servlet的...
  • mrliu20082009
  • mrliu20082009
  • 2011年09月02日 16:35
  • 1874

HttpUnit 使用示例 抓取网页内容

最近在想如何从网页中抓取需要的数据出来, 直接用java提供的API太麻烦了, 在一些成熟的自动化测试web程序的类库中有可能需要的功能, 如HttpUnit, Watij, Selenium ; 现...
  • darkjune
  • darkjune
  • 2015年02月12日 15:59
  • 1797

HttpUnit简介

对httpunit的概念是一片茫然,google了一下。 1.下载网址 http://httpunit.sourceforge.net/ 目前版本是1.6.2,网上新版本的介绍中文的很罕见,找了...
  • hjm4702192
  • hjm4702192
  • 2012年12月14日 15:06
  • 733

HttpUnit

转:http://www.51testing.com/html/14/175414-207590.html HttpUnit是一个集成测试工具,主要关注Web应用的测试,提供的帮助类让测试者可以通...
  • zjcheer_up
  • zjcheer_up
  • 2015年05月05日 10:32
  • 577

实例简介HttpUnit结合JUnit自动测试Web应用

本文通过实例来讲解如何通过HttpUnit来对web应用进行测试,尤其是当下Ajax越来越流行的情况下,http request和response交互频繁,里面传输的内容也以Json或者XML为主,用...
  • kkdelta
  • kkdelta
  • 2010年05月28日 16:01
  • 6505
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Tips on HttpUnit
举报原因:
原因补充:

(最多只允许输入30个字)