模拟用户浏览会话以进行单元测试

时间:2011-01-31 13:51:55

标签: http httprequest unit-testing

我正在寻找一个可以让我模仿用户浏览会话的框架。

典型的会话如下:

  1. 浏览主页,获取会话
  2. 被重定向到当前页面
  3. 点击某个链接
  4. 建立联系
  5. 提交表格
  6. 和co ...
  7. 我希望能够使用API​​调用来定义此会话。

    您建议使用哪些框架来运行此设置?它应该是无头的(不在浏览器内),能够通过Hudson执行。

    语言没关系,java的python会很棒。

    谢谢你,
    格言。

3 个答案:

答案 0 :(得分:1)

查看htmlunit

它甚至得到了不错的javascript支持,基于Java。

  • 支持HTTP和HTTPS协议
  • 支持cookies
  • 能够指定来自服务器的失败响应是应该抛出异常还是应该作为相应类型的页面返回(基于内容类型)
  • 支持提交方法POST和GET(以及HEAD,DELETE,...)
  • 能够自定义发送到服务器的请求标头
  • 支持HTML响应
    • HTML页面的包装器,可以轻松访问其中包含的所有信息
    • 支持提交表格
    • 支持点击链接
    • 支持遍历HTML文档的DOM模型
  • 代理服务器支持
  • 支持基本和NTLM身份验证
  • 优秀的JavaScript支持

答案 1 :(得分:1)

有多个框架可以做到这一点。退房:

https://github.com/axefrog/XBrowser

http://htmlunit.sourceforge.net/

以及这个问题的答案: Alternative to HtmlUnit

答案 2 :(得分:0)

使用Xvfb查看Selenium WebDriver。

这篇文章展示了Python中的一个例子:
'Python - Headless Selenium WebDriver Tests using PyVirtualDisplay'