当Xcode大于等于8时,如何使用Appium Desktop 获取iOS APP控件的id进行自动化测试
·
背景
当 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(https://github.com/appium/appium-desktop/),在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以上的模拟器上:
https://github.com/appium/appium/blob/master/docs/en/advanced-concepts/migrating-to-xcuitest.md - appium desktop 下载url:
https://github.com/appium/appium-desktop/ - 用如下命令来查下你mac 安装的模拟
xcrun simctl list
更多推荐
所有评论(0)