背景:
当 Xcode 升级到 8,在iOS自动化测试中,以前老的appium(1.5.3)的版本再也无法启动 iOS APP(官错误信息显示:Requested iOS support with version >= 10, using XCUITest driver instead of UIAutomation-based driver, since the latter is unsupported on iOS 10 and up.)。所以我们需要用新的 Appium Desktop 去获取 控件的相关信息(比如id),来让我们的应用可以在iOS 大于 9.3的模拟上跑自动化测试。
环境搭建
- 下载appium desktop(github.com/appium/appi…),在mac上 安装。
- 如下命令安装 carthage。
brew install carthage
- 我目前安装的xcode为9.0.1
- 我目前安装的appium为1.2.4
如何获取控件的相关信息(比如Id)
-
启动appium desktop,并填写host为127.0.0.1,点击Start Server,如下图:
- 点击Sart Inspector Session 按钮,如下图:
- 填写要启动的iOS APP的相关信息,比如:platfromName、platfromVersion、deviceName、app、noReset,最后点击Start Session。如下图:
- 在Inspector 页面,最上面一行,你会看到有获取id的按钮,滑动的按钮,刷新的按钮,以及录制脚本的按钮。当你点击获取id的按钮,然后再点击APP对应的控件,你会看到关于这个控件的详细信息。如下图:
总之:
我们都知道如何获取控件的id,在自动化测试中是关键的一步。你会发现有了appium desktop可以顺利解决xcode大于8,模拟器iOS 大于9.3无法启动应用,获取控件id的问题。
ps:
- 如何修改ios 9.3以下的tests cases 让它运行在iOS 10.0以上的模拟器上:
github.com/appium/appi… - appium desktop 下载url:
github.com/appium/appi… - 用如下命令来查下你mac 安装的模拟
xcrun simctl list