Appium 最近的 Appium inspector 使用姿势

恒温 · 2015年10月20日 · 最后由 杨豆豆 回复于 2016年05月04日 · 93 次阅读
本帖已被设为精华帖!

最近问我关于 Appium inspector 不能打开的人有点多,所以开一个贴来回答下。首先肯定是你打飞机的方式不对。

先说下我的环境:

  • OSX10.11
  • XCode Version 7.0.1 (7A1001)
  • Appium 1.4.8

问的第一个问题,找不到设备,报如下类似的日志:

(Original error: Could not find a device to launch. You requested 'iPhone (9.0 Simulator)', but the available devices were: [\"iPad 2 (9.0) [031234AD-E5F7-43C9-96FA-B17102BDA639]\",\"iPad Air (9.0) [6D42D419-3A5B-4AEE-84FA-0A7A6399BDFB]\",\"iPad Air 2 (9.0) [0E8DD9FF-74E8-41C5-A9DF-0686D8928E33]\",\"iPad Retina (9.0) [28B9D67C-C4A1-494F-9050-530131273A4F]\",\"iPhone 4s (9.0) [ED0646AF-6D55-4098-A2DC-357F4388C046]\",\"iPhone 5 (9.0) [DE374BB7-4C31-4B6C-935E-25C91758F149]\",\"iPhone 5s (9.0) [2F6D313C-5229-478C-8718-12EF0D2B5D76]\",\"iPhone 6 (9.0) [A8A2985F-4415-4315-A667-6BD15AAAC187]\",\"iPhone 6 (9.0) + Apple Watch - 38mm (2.0) [E6870A9B-5002-415C-AA5C-A922AED64D4E]\",\"iPhone 6 Plus (9.0) [EE370519-F66A-46C5-AF1C-6E76ABDD0521]\",\"iPhone 6 Plus (9.0) + Apple Watch - 42mm (2.0) [7DEE837E-8C50-4A47-978B-9591972CD367]\",\"iPhone 6s (9.0) [D4EFCB49-E6D0-482E-A490-952E834EBC98]\",\"iPhone 6s Plus (9.0) [34887784-FECA-4C50-B208-A18272365B32]\"])","origValue":"Could not find a device to launch. You requested 'iPhone (9.0 Simulator)', but the available devices were: [\"iPad 2 (9.0) [031234AD-E5F7-43C9-96FA-B17102BDA639]\",\"iPad Air (9.0) [6D42D419-3A5B-4AEE-84FA-0A7A6399BDFB]\",\"iPad Air 2 (9.0) [0E8DD9FF-74E8-41C5-A9DF-0686D8928E33]\",\"iPad Retina (9.0) [28B9D67C-C4A1-494F-9050-530131273A4F]\",\"iPhone 4s (9.0) [ED0646AF-6D55-4098-A2DC-357F4388C046]\",\"iPhone 5 (9.0) [DE374BB7-4C31-4B6C-935E-25C91758F149]\",\"iPhone 5s (9.0) [2F6D313C-5229-478C-8718-12EF0D2B5D76]\",\"iPhone 6 (9.0) [A8A2985F-4415-4315-A667-6BD15AAAC187]\",\"iPhone 6 (9.0) + Apple Watch - 38mm (2.0) [E6870A9B-5002-415C-AA5C-A922AED64D4E]\",\"iPhone 6 Plus (9.0) [EE370519-F66A-46C5-AF1C-6E76ABDD0521]\",\"iPhone 6 Plus (9.0) + Apple Watch - 42mm (2.0) [7DEE837E-8C50-4A47-978B-9591972CD367]\",\"iPhone 6s (9.0) [D4EFCB49-E6D0-482E-A490-952E834EBC98]\",\"iPhone 6s Plus (9.0) [34887784-FECA-4C50-B208-A18272365B32]\"]"},"sessionId":null}

很多人不看日志,看不懂英文。其实很简单吗,You requested 'iPhone (9.0 Simulator)' 你要的是 iPhone (9.0 Simulator),但是只有后面那一堆。怎么办呢?自己造一个。

打开 xcode 的设备:

根据自己想要的名字建立一个:

如果是 iPhone (9.0 Simulator),那么 appium 对应的配置就是:

那可是个输入框,输入框,输入框!

这样就能找到设备了。但是你以为这样就完结了?于是有人又来问,我又遇到问题了,这样的日志:

[INST STDERR] dyld: could not load inserted library '/Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/appium-instruments/thirdparty/iwd7/InstrumentsShim.dylib' because no suitable image found. 

这是什么鬼?科学上网就能解决啊。https://github.com/appium/appium/issues/5720

Currently Instruments-Without-Delay does not work with iOS 9+. We are working on a fix for this.

In order to run the server without this shim, in "Developer Settings" add a "Custom Server Flag" --native-instruments-lib before launching the server.

于是:

设置好,启动起来!

再运行 inspector 试试?

我是这样的配置

启动好后,

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 16 条回复 时间 点赞

自己造一个,牛!

appium 官方解释是直到 1.4.11 后才正式支持 9.0 。

iOS 9 is supported only on Appium 1.4.11 and above (1.5 beta). Refer the following link to reconfig your appium client to 1.4.11 to fix the above issue.

Upgrade Appium Client to latest appium version

https://discuss.appium.io/t/could-not-find-a-device-to-launch-cannot-launch-iphone-5-9-0-simulator/6093/5?u=chenhengjie123

赞~~·~·

妈蛋。我怎么没想到造一个的办法=。=那都不用升 appium 的版本了?

思维确实很重要,赞!

感谢恒温!有空再尝试这个姿势,先 mark

#5 楼 @32191163 学习思路

#6 楼 @lihuazhang 主要对 xcode 也不熟悉,而 appium for android 没遇到过这种情况

不知到是不是我姿势不对。
造出来的也不能用。
还是乖乖得用 1.4.11 了
我发现我装 1.4.13 装不上,会报npm ERR! DRAWN 15.0的错误,@chenhengjie123 你上 13 没

#8 楼 @anikikun 还没上。不过我在 1.4.8 上用造出来的可以用。

你造出来后用 instruments -s devices 能看到吗?应该大致长这样:

iPhone (9.0 Simulator) (9.0) [D959D43E-3FE6-41E8-AF06-EDC4F5973A43]

添加新设备时设备名称是 iPhone (9.0 Simulator)

#8 楼 @anikikun 搞个,重试一两次一般都能搞上去,或者使用 npm update -g appium,我都是开着升级,快得很。

#10 楼 @313077271
*** 一直开着的。
应该不是这个问题,1.3.7,1.4.11 都是秒装,就 13 会卡这。
proxy 都毙掉了还是一样。

12楼 已删除

我 1.4.13 没开 *** 都秒装啊

我的安装方法是直接在境外的一台 server 上把 appium 更新好,然后再把整个文件夹拷贝到本地

赞~~~

正准备按文章说的那样,造一个 8.4 版本的模拟器,发现 XCode 里没有下载,公司网速太慢。。。不给下载~~~忽然发现,appium 里的 platform Version 是个输入框。。。。可以填写 9.2。。。。差点吐血而死。。。。。。

都是高手啊

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册