【问题标题】:Automated cross-browser visual inspection自动跨浏览器视觉检查
【发布时间】:2011-07-11 23:47:30
【问题描述】:
我们正在寻找一种工具,可以让我们在多个浏览器(包括 Chrome、FF 3、4、IE 6、7、8)上编写脚本和运行测试,并且在运行期间允许人类直观地检查每个页面/操作.这必须支持 javascript,因此简单的 browsershots 方法将不起作用。像 Selenium Grid 这样的东西可能会起作用,但我还没有看到任何像控制台一样的东西,这样人们就可以直观地检查每个测试步骤。理想情况下,这个问题的答案应该是一个运行脚本化前端测试的工具,并在网格中的每个浏览器上显示这些测试,以便人们可以在测试测试 html 内容时直观地检查每个页面的外观。
【问题讨论】:
标签:
html
css
cross-browser
automated-tests
【解决方案1】:
Cucumber Sauce怎么样?
我没有尝试过,纯粹是因为我不需要跨多个浏览器或无头并行运行测试。但是,我使用 Cucumber BDD 进行几乎所有的 Web 应用程序测试。 Cucumber Sauce 看起来可能已经解决了并行性问题,所以它可能对你有用。
【解决方案3】:
几个月前,我遇到了一个浏览器,它允许用户查看不同的渲染引擎如何显示他们的网站:Lunascape 和 here 是它的功能。就其有效性或准确性而言,我无法保证(我从未使用过);不过,我可以将您链接到 CNET 评论:CNET。
所以我最好的想法是使用 lunascape(让您的测试人员并排查看所有引擎),然后使用包含在每个页面中的 javascript 编写测试脚本。
祝你好运,希望这会有所帮助。
【解决方案5】:
开源工具 Selenium,支持many browsers,可以作为简单的记录/回放工具或代码运行,但浏览器兼容性会根据您选择的方法而有所不同。 Google 近来大量使用 Selenium,并且在他们的测试博客上有很多很好的文章,例如 this one。
【解决方案6】:
非常好的问题。
我想到的壁橱工具将是 HP 负载运行器:
- 能够在测试运行时目视检查每个页面,并在需要时插入断点
- 支持Javascript,但异步请求(ajax)可能有问题
因为总是有一个但是:
- 并非所有浏览器都是模拟的。
- 浏览器也被模拟...
- 报告将打印性能,而不是页面上显示的内容。
- 价格
我不认为视觉检查属于自动化测试。自动化测试是关于性能和检测回归的。另一边的目视检查是检查布局是否正确渲染。
【解决方案7】:
此测试不取决于要测试的站点的大小吗?如果我有一个 5-10 页的网站,我会使用上面提到的一些工具,手动处理它(即在每个平台上的每个浏览器中浏览网站),使用 browsershots.org,或使用 Safari 中的工具,例如就像模拟浏览器一样。
如果网站很大,那么这些选项会变得非常困难和耗时,而我的经验是,最好的办法是确保每个页面都符合标准,并在几个浏览器中尝试不同的页面。
希望这会有所帮助。