模拟
WebdriverIO 允许您使用emulate
命令模拟 Web API。然后,这些 Web API 可以完全按照您指定的方式运行。支持以下范围
geolocation
:模拟地理位置 APIuserAgent
:模拟用户代理colorScheme
:模拟颜色方案onLine
:模拟在线状态device
:模拟特定的移动或桌面设备clock
:模拟系统时钟
emulate
命令返回一个可以调用的函数以重置模拟。当您希望在测试或测试套件后重置模拟时,这很有用。
在模拟指南中阅读更多相关内容。
信息
除了clock
范围外,无法在不重新加载页面的情况下更改模拟值。
信息
此功能需要浏览器支持 WebDriver Bidi。虽然 Chrome、Edge 和 Firefox 的最新版本都支持此功能,但 Safari **不支持**。有关更新,请关注wpt.fyi。此外,如果您使用云供应商来生成浏览器,请确保您的供应商也支持 WebDriver Bidi。
根据范围,EmulationOptions
对象可以具有以下属性
范围 | 选项 |
---|---|
geolocation | { latitude: 数字, longitude: 数字 } |
userAgent | 字符串 |
colorScheme | 'light' | 'dark' |
onLine | 布尔值 |
时钟 | FakeTimerInstallOpts |
用法
browser.emulate(scope, options)
参数
名称 | 类型 | 详细信息 |
---|---|---|
范围 | 字符串 | 您想要模拟的浏览器功能,可以是clock 、geolocation 、userAgent 、colorScheme 或onLine |
选项 | EmulationOptions | 特定范围的模拟选项 |
示例
example.js
loading...
example.js
loading...