随着 iOS 13 的发布,苹果现在包含了原生iOS W3C WebDriver支持。除了先前在 Safari 10 中添加的 WebDriver 支持之外,WebDriver 现在可以轻松地用于移动 Safari Web 应用程序的高效测试了。
虽然之前可以通过 iOS 模拟器或各种基于云的测试提供程序在 iOS Safari 中使用 WebDriver,但原生 WebDriver 支持提供了额外的测试功能以及更好的移动 UI 测试体验。
原生 WebDriver API 提供了针对恶意代码和脆弱测试的保护。Safari WebDriver 实现会限制 WebDriver 会话中的浏览行为。测试被隔离在一组单独的窗口、选项卡、首选项和持久存储中,现有的选项卡被隐藏,带有橙色 Smart Search 字段的特殊颜色的 WebDriver 窗口被显示。这种方法有助于提高安全性和私密性,并确保测试不会受到以前会话的影响。测试完成后,任何本地状态(如 Cookie)都会被删除。
为了防止在自动化测试会话期间出现意外的用户交互,Safari 在自动化浏览器窗口上添加了一个窗格来阻止任何交互行为。如果运行中的测试卡住或失败,开发人员可以点击屏幕并选择结束 WebDriver 会话。WebDriver 发起的导航不能在 Safari 之外处理。例如,单击应用商店链接不会重定向到 App Store。
要开始在运行 Safari 13 及更新版本的 macOS 设备上使用 WebDriver 支持,开发人员需要运行 safaridriver --enable 并进行管理员身份验证。然后在用于测试的 iOS 设备上,开发人员需要启用远程自动化(设置→Safari→高级→远程自动化)。然后,开发人员需要将他们的 iOS 设备插入 macOS 主机,信任主机,并在启动 WebDriver 会话时解锁 iOS 设备。
WebDriver 配置应该包括’platformName’: ‘ios’;,以区分运行 iOS 模拟器和原生 macOS 测试。要使用 iOS 模拟器进行测试,请添加 ‘safari:useSimulator’: true。
iOS 的 WebDriver 支持随 iOS 13 及更高的版本提供,需要 macOS 主机运行 Safari 13 或更高版本。
原文链接:
Apple Adds Native W3C WebDriver Support to iOS
评论