跳至主要内容

模拟

WebdriverIO 允许您使用emulate 命令模拟 Web API。然后,这些 Web API 可以完全按照您指定的方式运行。支持以下范围

  • geolocation:模拟地理位置 API
  • userAgent:模拟用户代理
  • 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)
参数
名称类型详细信息
范围字符串您想要模拟的浏览器功能,可以是clockgeolocationuserAgentcolorSchemeonLine
选项EmulationOptions特定范围的模拟选项
示例
example.js
loading...
example.js
loading...

欢迎!我如何帮助您?

WebdriverIO AI Copilot