HttpUnit的基础使用(一)
首页地址
http://httpunit.sourceforge.net/doc/cookbook.html
1.WebConversation is the center of HttpUnit
It is responsible for maintaining session context via cookies returned by the server.
we can get web response like this:
WebConversation wc = new WebConversation();
WebResponse resp = wc.getResponse( "http://www.httpunit.org/doc/cookbook.html" ); // read this page
And we can examine and follow links like this:
WebLink link = resp.getLinkWith( "response" );// find the link
System.out.println(link.getURLString());
System.out.println(link.getText());
link.click();// follow it
WebResponse jdoc = wc.getCurrentPage();
System.out.println(jdoc.getTitle());
the link text in cookbook.html is like this:
<a href="api/com/meterware/httpunit/WebResponse.html">response</a>
The WebResponse.getLinkWithImageText() method can look up links by examining the ALT text, or the HttpUnitOptions.setImagesTreatedAsAltText method can cause ALT text to be treated as ordinary searchable text.
We can deal with tables too:
WebTable table = resp.getTables()[0];
table.getRowCount()
table.getColumnCount()
table.getTableCell( 0, 2 )
String[][] colors = resp.getTables()[1].asText();
colors[0][0]
2.Working with forms
WebForm form = resp.getForms()[0]; // select the first form in the page
form.getParameterValue( "Name" )
the Name html element is the page is like this:
<input name="Name" type="text" value="La Cerentolla">
form.setParameter( "Food", "Italian" ); // select one of the permitted values for food
form.removeParameter( "CreditCard" ); // clear the check box
form.submit(); // submit the form
3.Working with frames
WebConversation wc = new WebConversation();
WebResponse top = wc.getResponse( "http://www.meterware.com/Frames.html" ); // read a page with two frames
WebResponse summary = wc.getFrameContents( "summary" ); // read the summary frame
WebLink link = summary.getLinkWith( "Cake Recipe" ); // find the link (which targets "details" );
link.click(); // click on it
WebResponse response= wc.getFrameContents( "details" ); // retrieve the details frame
分享到:
相关推荐
本篇文章将详细介绍如何利用HttpUnit来模拟登录一个网站,以及与之相关的`jxl`库的使用。 首先,让我们了解`HttpUnit`。HttpUnit是一个轻量级的测试框架,它可以模拟浏览器发送HTTP请求并接收响应。它的核心功能...
HttpUnit是SourceForge下面的一个开源项目,它是基于JUnit的一个测试框架,主要关注于测试Web应用,解决使用JUnit框架无法对远程Web内容进行测试的弊端。 HttpUnit让测试者可以通过Java类和服务器进行交互,并且将...
HttpUnit 是一个基于Java的开源测试框架,专为测试Web应用程序而设计,它扩展了JUnit,弥补了在JUnit中直接测试远程Web内容的不足。HttpUnit允许开发者通过编写Java代码来模拟浏览器行为,如提交表单、处理...
通过上述介绍可以看出,HttpUnit提供了一系列强大的功能,使得开发者能够在JUnit的基础上更方便地进行Web应用的自动化测试。无论是简单的HTTP请求还是复杂的表单提交、表格数据处理,HttpUnit都能够有效地帮助开发者...
1. **httpunit.jar**: HTTPUnit 是一个Java库,用于自动化Web应用程序的测试。它允许开发者模拟浏览器行为,如发送HTTP请求、接收HTTP响应,并能处理JavaScript和HTML内容。这对于单元测试和集成测试非常有用,可以...
- **JWebUnit** 则是在HttpUnit的基础上进一步封装而成的一个框架,它提供了更高级别的抽象,使编写Web应用程序的测试更加简单直观。 #### 安装与配置 首先,你需要下载HttpUnit库。可以从官方网站...
在实际使用HttpUnit时,我们首先需要导入相关库,然后创建一个HttpUnit测试类,定义HTTP请求,并设置必要的参数(如URL、方法、请求头等)。之后,我们可以发送请求并捕获响应,对响应的内容、状态码或头信息进行...
2. **HttpUnit**:尽管 HttpUnit 不是一款纯粹的测试工具,但它可以作为辅助工具与 JUnit 结合使用,支持对应用程序的工作流程进行功能单元测试。 3. **JsUnit**:针对 JavaScript 的单元测试框架,与 JUnit 类似,...
版本4.2.5是一个稳定且广泛使用的版本,包含了`httpclient-4.2.5.jar`和`httpcore-4.2.4.jar`这两个核心依赖。`httpcore`提供了基本的HTTP协议处理,而`httpclient`则在此基础上添加了更高级的功能,如连接管理、重...
**Java极限编程**是一种针对已有一定Java基础的学习者而设计的高级编程方法论。它不仅涵盖了传统的软件开发流程,还强调了敏捷开发的理念,使得开发团队能够更加高效地应对变化的需求。对于初学者而言,由于涉及的...
jWebUnit是在HttpUnit上创建的一个辅助工具包,它减少测试web程序需要你写的代码。简单的说,你可以把它当作HttpUnit的宏程序库,提供到HttpUnit代码段的快捷方式,它简化了web程序测试的代码。 ### 4. ...
5. `httpunit.jar`:HttpUnit是一个Java库,用于模拟浏览器行为,测试Web应用程序,也可能用于Web服务的自动化测试。 6. `commons-httpclient-3.0-rc2.jar`:Apache HttpClient库提供了一种方式来执行HTTP请求,这...
10. **HTTPUnit**: `httpunitdemo`是一种网页抓取技术,可以执行JavaScript,模拟用户行为,适用于自动化测试和数据抓取。 11. **Base64图像处理**: `imgdemo`演示了Base64编码和解码在图片与文件之间的转换,常...
3. **Eclipse**:Eclipse是一个开放源代码的IDE,最初由IBM贡献其WSAD(WebSphere Application Developer)的基础框架。Eclipse因其强大的插件体系和可扩展性而受到广泛欢迎,可以用于Java、C++、Python等多种语言的...
- **Eclipse**:最初源自IBM开源的WebSphere Studio基础框架,通过全球范围内的开发者贡献了众多插件,使其成为了一个强大的开发工具,并不仅仅局限于Java EE开发。 - **NetBeans**:由Sun Microsystems提供并开源的...
开发者可以使用HttpUnit设置请求参数,设置Cookie,模拟用户交互,并检查服务器返回的数据,以验证Web应用的功能是否符合预期。 总的来说,语言技术在测试领域的应用,尤其是针对Java Web应用的测试框架,极大地...
然而,测试的基础设施(如测试数据的准备和清理)需要开发者额外的工作,以确保每次测试都能在一个一致的状态下执行。 清单1展示了一个简单的JWebUnit测试用例,它模拟用户与Web应用的交互并验证结果。但这个测试...