写点什么

Safari 10 提供 WebDriver 支持

  • 2016-06-28
  • 本文字数:828 字

    阅读完需:约 3 分钟

苹果宣布,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

2016-06-28 19:002423
用户头像

发布了 1008 篇内容, 共 419.8 次阅读, 收获喜欢 346 次。

关注

评论

发布
暂无评论
发现更多内容

模块一作业

愚人夜行者

微信业务架构图&“学生管理系统”毕设架构设计

Louis

架构实战营9期第一模块课后作业

旋风

「架构实战营」

网络中一些很常见的协议,以及他们对应的报文格式介绍

阿柠xn

TCP 网络协议 9月月更 ARP

跟着卷卷龙一起学Camera--3D LUT

卷卷龙

ISP 9月月更

大数据ELK(七):安装Elasticsearch-head插件

Lansonli

elasticsearch 9月月更

自制操作系统系列(一):显示hello world开始旅程

操作系统

多云容器编排 Karmada-Operator 实践

vivo互联网技术

容器 云原生 Karmada

CDH/CDP中开启kerberos后如何访问HDFS/YARN/HIVESERVER2 等服务的webui

明哥的IT随笔

hadoop hive kerberos

重磅预告!2022研运一体创新峰会火热报名中!

嘉为蓝鲸

运维 数字化转型 IT 研发

2022-09-28:以下go语言代码输出什么?A:1 1;B:1 2;C:2 2;D:不确定。 package main import ( “fmt“ ) func main() { var

福大大架构师每日一题

golang 福大大 选择题

天天都在谈的防火墙到底是个啥,有哪些分类?如何选择防火墙?

wljslmz

网络安全 防火墙 9月月更

跟着卷卷龙一起学Camera--PDAF 01

卷卷龙

ISP 9月月更

1

神经蛙

跟着卷卷龙一起学Camera--TNR

卷卷龙

ISP 9月月更

【最右】面向TS生态的新型Flutter框架

刘剑

typescript 小程序 移动端 动态化 flutter for web

架构实战训练营模块 1 作业

atcgnu

什么是地址转换协议ARP?工作流程是什么样的?

wljslmz

9月月更 ARP

Linux下通过tar包方式安装MySQL,详细教程

阿柠xn

运维 MySQL 运维 Linux tar 9月月更

MySQL安装到非系统盘详细教程

阿柠xn

MySQL 教程分享 安装使用 9月月更

极客时间-架构师训练营作业-模块一

沐の爹

人工智能知识介绍

阿柠xn

人工智能 AI 科普 9月月更

数据开发也能双轮驱动?

乌龟哥哥

9月月更

刘潇翔:基于OpenHarmony的仿生四足狗开发分享

OpenHarmony开发者

Open Harmony

挑战Python的语法练习

芯动大师

项目实战 9月月更 模块创建

后疫情时代,RTE“沉浸式”体验还能这么玩?丨RTE 2022 编程挑战赛赛后专访

声网

人工智能

作业一

Geek_408c99

架构实战训练营模块 1 作业

Geek_b35d92

架构训练

【web 开发基础】php 开发基础快速入门 (2)-PHP的程序开发

迷彩

php开源 9月月更 PHP语法 PHP面向对象

跟着卷卷龙一起学Camera--PDAF 02

卷卷龙

ISP 9月月更

Git,GitHub和Gitee

阿柠xn

git GitHub license gitee 9月月更

Safari 10提供WebDriver支持_JavaScript_James Chesters_InfoQ精选文章