BT

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

Safari 10提供WebDriver支持

| 作者 James Chesters 关注 2 他的粉丝 ,译者 谢丽 关注 11 他的粉丝 发布于 2016年6月29日. 估计阅读时间: 3 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

苹果宣布,Safari 10.0支持WebDriver,并提供了Web Inspector和一个新的JavaScript性能分析器。

Safari是最晚一个支持这个Web应用程序自动测试工具的主流浏览器,微软在2015年就宣布在Edge浏览器中支持WebDriver。

Safari的更新说明中,苹果指出,Safari包含的safari driver将提供“一套接口,用于操作DOM元素,控制浏览器的行为”,在使用/usr/bin/safaridriver启动服务器以前,开发人员应该在Develop菜单中启用Remote Automation。

David Burns是Mozilla工程部的经理,他在The Automated Tester上发表了一篇博文,阐述safari driver对于Selenium的重要性。Burns使用了最近Firefox 47的例子,“在Firefox 47中,Selenium导致Firefox在启动时崩溃。Mozilla的WebDriver实现Marionette和GeckoDriver永远都不会遇到这个问题,因为像这样的测试失败和崩溃会导致补丁还原,终端用户永远都不会看到。”

Safari 10新增的Web Inspector特性包含新的时间线窗口,可以帮助Web开发人员可视化应用程序的内存使用情况,并随着时间推移绘制堆分配快照,帮助开发人员识别可以优化内存性能的地方。

苹果还承诺通过新的JavaScript性能分析器提供“更高的性能”,该分析器会在禁用调式工具的情况下以很高的精度对正在运行的代码进行抽样。

10.0版本还有一个显著的特性,就是在OSX和iOS上“完全支持”ES6,将Proper Tail Calls(PTC)带到了Safari。Michael Saboff是一名在苹果从事WebKit开发的软件工程师,他在博文“WebKit中的ECMAScript 6 Proper Tail Calls”中详细阐述了ECMAScript 6的重要性:

该特性的加入是为了便于使用递归编程模式,既包括直接递归,也包括间接递归。其他各种设计模式也可以从PTC受益,比如对于封装了某项功能的代码,封装代码直接返回它所封装的功能的结果。使用PTC可以减少运行代码所需的内存量。在深层递归代码中,PTC可以让原本会抛出栈溢出异常的代码运行。

查看英文原文:Safari 10 Ships WebDriver

评价本文

专业度
风格

您好,朋友!

您需要 注册一个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