WebdriverIO - 运行 在 Android 和 iOS 上并行执行相同的代码
WebdriverIO - Run the same code parallelly on Android and iOS
我正在研究移动自动化,我需要在 Andorid 和 iOS 中同时 运行 相同的规范。但是 Android 和 iOS 应用程序中的定位器并不相同。
我可以在 page.js 中为单个元素定义两个定位器吗?
类似于 Selenium+Appium 使用注释 AndroidFindBy 和 iOSFindBy
在 WebdriverIO 中有一个选项可以做到这一点
get username() {
const selectorAndroid = 'new UiSelector().text("Cancel").className("android.widget.Button")'
const selectorIOS = 'UIATarget.localTarget().frontMostApp().mainWindow().buttons()[0]'
const selectorType = driver.isAndroid ? 'android' : 'ios'
const selector = driver.isAndroid ? selectorAndroid : selectorIOS
return $(`${selectorType}=${selector}`)
}
参考:WebdriverIO
我正在研究移动自动化,我需要在 Andorid 和 iOS 中同时 运行 相同的规范。但是 Android 和 iOS 应用程序中的定位器并不相同。
我可以在 page.js 中为单个元素定义两个定位器吗?
类似于 Selenium+Appium 使用注释 AndroidFindBy 和 iOSFindBy
在 WebdriverIO 中有一个选项可以做到这一点
get username() {
const selectorAndroid = 'new UiSelector().text("Cancel").className("android.widget.Button")'
const selectorIOS = 'UIATarget.localTarget().frontMostApp().mainWindow().buttons()[0]'
const selectorType = driver.isAndroid ? 'android' : 'ios'
const selector = driver.isAndroid ? selectorAndroid : selectorIOS
return $(`${selectorType}=${selector}`)
}
参考:WebdriverIO