BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

DevExpress发布TestCafe:一款智能脚本注入、流量及标记分析工具

| 作者 Anand Narayanaswamy 关注 0 他的粉丝 ,译者 廖煜嵘 关注 0 他的粉丝 发布于 2013年9月10日. 估计阅读时间: 5 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

DevExpress最近发布了一款名为TestCafe的基于Web的测试框架,它能对Web页面的用户界面和通过HTML5、CSS和Javascript渲染的应用进行测试。

最近DevExpress 发布了TestCafe测试框架,该框架让用户使用任何基于HTML5的浏览器在Windows、Mac或Linux平台上运行测试。它提供了智能脚本注入的功能,这能让开发者直接和页面的DOM打交道并拦截用户的操作。它也消除了浏览器插件间的差异性并提供完全免费的通过jQuery访问DOM和浏览器的API。

TestCafe包括一个内置的流量分析工具,它能通知用户缺失的资源,响应代码和JavaScript错误。它还附带一个标记分析工具,它能确保网页元素都是完整的,并且对用户可见。

为使用TestCafe,用户需要按下REC按钮,它就会在同一个浏览器窗口中加载网页。用户在每次记录的过程中将看到一个确认对话框,可以预览的操作、进行回滚和自定义元素选择器代码。TestCafe也可以通过界面或命令行方式运行测试,还通过集成的用户界面或处理JSON输出的方式分析处理结果。

为了解更多关于TestCafe的相关情况,InfoQ采访了DevExpress的CTOJulian Bucknall

InfoQ:可以使用TestCafe测试哪些类型的应用?

TestCafe是为测试页面和Web应用页面的功能而设计的。如果是通过HTML5、CSS和Javascript渲染的页面或应用,TestCafe都能测试。

InfoQ:如果TestCafe是一个基于Web的测试框架的话,请解析一下下载使用它的必要性?

TestCafe实际上由两部分组成。其中有几个部分包括了仪表板和在客户端启动测试(在任何设备上一个或多个浏览器实例)的分析组件(以及代理服务器)。还包括在浏览器中运行测试并将结果返回到服务器的客户端库。

是的,我们是可以将TestCafe以服务端的方式发布(本质上,我们可以“租”出测试服务),但我们认识到,大多数在QA环境中进行的Web测试都是没有连接到互联网。

在这种情况下,将服务端部分作为TestCafe的一部分出售是合理的。请注意,尽管命名是一样,但TestCafe服务端可以很容易地在提供了浏览器环境的机器上运行,或者说可以在Web开发人员的机器上运行。Web开发人员可以编写并在没有连接到其他pc机的自己的机器和设备上运行测试。

InfoQ: 能使用TestCafe去测试Windows FormsWindows Phone 8应用吗?

不能,暂时只能测试Web页面和Web应用。

InfoQ: TestCafe和其他工具有什么不同之处?

其他Web的功能测试工具通常需要在浏览器安装特殊的插件去运行应用。服务器端和插件进行通信,同时插件尝试去控制应用。这意味着,不仅要为每一种浏览器单独编写插件,有时还要针对浏览器的不同版本编写插件。

插件在访问页面的DOM方面也会遇到困难,比如DOM中元素的是否可视、控制用户的输入等等。TestCafe不需要插件,它向网页注入一个特殊的客户端库并完全控制整个页面。这就是为什么TestCafe的可以直接测试在移动设备如iPhone或Android手机中的网页,还可以捕获(报告)页面可能抛出的错误。

InfoQ: 能否在共享或者单独的托管空间中使用TestCafe?

TestCafe运行基于node.js,所以如果你的服务提供商允许使用node.js,那就是可以的。

InfoQ: TestCafe仅指出和应用相关的bug还是自动纠正bug?

TestCafe是一种功能测试工具。开发者编写(或录制)一系列的操作以及预计的结果。TestCafe只是重复相同的动作并验证结果是否符合。如果结果是不一样的,则会报错误,但工具有无法知道什么样的改变导致了错误的结果。

InfoQ: 使用TestCafe能提高开发者的效率么?

当然可以。Web开发人员能够为特定的网页或应用建立了一套功能测试,然后在检查过程中验证测试是否依然能通过。这样可以在产品发布前甚至在代码提交到代码库之前就可以发现缺陷,已经有许多发表的研究显示,越早发现缺陷则修复的代价(时间、金钱、精力)越小。

查看英文原文:TestCafe with Smart Script Injection, Traffic and Markup Analysis Tools


感谢马国耀对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ)或者腾讯微博(@InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT