关键词: httpunit 集成测试
1 HttpUnit简介
HttpUnit是SourceForge下面的一个开源项目,它是基于JUnit的一个测试框架,主要关注于测试Web应用,解决使用JUnit框架无法对远程Web内容进行测试的弊端。当前的最新版本是1.5.4。为了让HtpUnit正常运行,你应该安装JDK1.3.1或者以上版本。
1.1 工作原理
HttpUnit通过模拟浏览器的行为,处理页面框架(frames),cookies,页面跳转(redirects)等。通过HttpUnit提供的功能,你可以和服务器端进行信息交互,将返回的网页内容作为普通文本、XML Dom对象或者是作为链接、页面框架、图像、表单、表格等的集合进行处理,然后使用JUnit框架进行测试,还可以导向一个新的页面,然后进行新页面的处理,这个功能使你可以处理一组在一个操作链中的页面。
1.2 和其他商业工具的对比
商业工具一般使用记录、回放的功能来实现测试,但是这里有个缺陷,就是当页面设计被修改以后,这些被记录的行为就不能重用了,需要重新录制才能继续测试。
举个例子:如果页面上有个元素最先的设计是采用单选框,这个时候你开始测试,那么这些工具记录的就是你的单项选择动作,但是如果你的设计发生了变化,比如说我改成了下拉选择,或者使用文本框接受用户输入,这时候,你以前录制的测试过程就无效了,必须要重新录制。
而HttpUnit因为关注点是这些控件的内容,所以不管你的外在表现形式如何变化,都不影响你已确定测试的可重用性。
更多的关于httpunit的信息请访问httpunit的主页 http://httpunit.sourceforge.net/
2 作者的演示环境
系统平台:Windows 2000 Sercver
应用服务器:深圳金蝶的apusic3.0
开发工具: eclipse 2.1.2
说明: 所有的代码请下载作者提供的code.jar文件。
3 HttpUnit安装、环境配置
3.1 安装
1. 到HttpUnit的主页 http://httpunit.sourceforge.net 下载最新的包文件,当前的最新版本是1.5.4。/
2. 将下载。Zip包解压缩到c:/httpunit(后面将使用%httpunit_home%引用该目录)
3.2 环境配置
作者的演示程序都是在eclipse中开发、执行的,所以环境配置都是以eclipse为例,如果你使用其他的开发工具,请根据这些步骤进行环境配置。
1. 启动eclipse,建立一个java工程
2. 将%httpunit_home%/lib/*.jar; %httpunit_home%/jars/*.jar加入到该java工程的Java build Path变量中
4.1 获取指定页面的内容
4.1.1 直接获取页面内容
System.out.println("直接获取网页内容:"); // 建立一个WebConversation实例 WebConversation wc = new WebConversation(); // 向指定的URL发出请求,获取响应 WebResponse wr = wc.getResponse( " http://localhost:6888/HelloWorld.html " ); // 用getText方法获取相应的全部内容 // 用System.out.println将获取的内容打印在控制台上 System.out.println( wr.getText() );