一些开源测试工具的使用体会

发表于:2010-10-11 13:22

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:suxu    来源:TaoBao QA Team

  servletunit

  servletunit是开源测试工具httpunit的一部分,可以用来测试servlet和jsp;优势在于测试不依赖于UI,这样即提前了测试的过程,缩短了服务启动的时间,提高了效率,又减少因页面元素变动而付出的测试脚本维护成本。缺点1是无法对JavaScript进行测试,2是适用范围比较局限,适合jsp+servlet+javabean构建的项目。

  对MyServlet的测试代码如下

  httpunit

  httpunit是基于junit的测试工具,使用模拟浏览器的方式对页面进行测试,提供cookie机制(要自己通过实现,后面的工具可以自动保存),可以通过httpunit可以获得页面的快照。

  获取页面文本的方式如下

  htmlunit

  htmlunit是一个不依赖浏览器的测试工具,对html建模并且提供API来访问页面,这使它具有了很多优点,也许会成为未来测试工具的雏形,

  1 很快的执行速度;2跨平台;3支持多种浏览器,扩展性好;4可以获得页面快照;

  虽然htmlunit可以很好的测试静态页面,但对于JavaScript绘制出的菜单支持不够强大,等待ajax请求需要调用thread.sleep()方法中断线程,对于远程的js调用会产生error。

  对淘宝登陆页面的测试代码如下

  jwebunit

  jwebunit可以通过插件的方式调用htmlunit或selenium,提供了更加简洁的API,更多的功能,使得编写测试脚本更加简单;根据使用的插件不同,分别具有htmlunit和selenium的优,缺点;也许jwebuni的未来是值得期待的。

  通过对比可以发现,同样对淘宝的登录功能进行测试,代码要简洁很多。

  selenium

  selenium使用了不同于以上工具的原理进行测试,不是通过模拟浏览器,而是使用代理服务器发送http请求,依照所见即所得的方式,测试脚本将直接在浏览器里执行,在速度要稍慢于以上的测试工具,不过具有最好的成熟度,对JavaScript的支持也是最好的(毕竟是通过浏览器执行的,不像模拟浏览器对JavaScript的要求那么严格);而且通过selenium IDE的录制功能使编写测试脚本变得更加简单。

  使用selenium测试登录功能代码如下

《2023软件测试行业现状调查报告》独家发布~

精彩评论

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号