从命令行打开特定的模拟器以执行自动化跟踪

时间:2014-10-10 10:18:17

标签: ios xcode terminal instruments ios-ui-automation

我正在尝试使用终端打开iOS模拟器来执行自动化测试脚本。经过一番深入研究,我能够打开一个模拟器和仪器。默认情况下,它是推出iPhone Retina模拟器。但是如何打开指定的模拟器和版本Eg:iPad 2 - 7.0版本。

我尝试使用here中的instruments -w help,我收到了Instruments Usage Error : Unknown hardware device specified.

之类的错误

我尝试了各种来源,但我很无奈。知道如何启动指定的模拟器(如果可能的话,在XCode 5/6中)?

3 个答案:

答案 0 :(得分:3)

在Xcode 5.1中,仪器命令行工具支持使用-w标志指定模拟器SDK和设备类型。要查看支持的模拟器配置列表以及连接的设备,请在终端窗口中执行以下命令。

$instruments -s devices 

在iPhone模拟器上运行测试的示例:

$instruments\
-w "iPhone Retina (4-inch 64-bit) - Simulator - iOS 7.1" \
-t $TRACETEMPLATE AppLocation \
-e UIASCRIPT Script.js \
-e UIARESULTSPATH reportPath

答案 1 :(得分:1)

我也遇到了错误Instruments Usage Error : Ambiguous device name/identifier

但设备名称是正确的。要解决它

  1. 转到 Xcode - >菜单栏 - >窗口 - >设备
  2. 删除有问题的模拟器
  3. 再次创建相同的设备
  4. <强>利润!

答案 2 :(得分:0)

此外,对于@ Vaasu的回答,如果系统抛出设备歧义错误,您可以给设备ID代替设备型号。

例如:在我的系统中,这些是可用的设备。

Resizable iPad (8.0 Simulator) [97067B56-428E-48DE-A35E-87442AE0B2F7]
Resizable iPhone (8.0 Simulator) [A50156D2-F5B9-4781-99FC-F7D2D64C8C78]
iPad 2 (7.1 Simulator) [C298E193-48FD-451C-9173-A2B70A4B6232]
iPad 2 (7.1 Simulator) [2A03A43F-3F4F-453A-9469-E2F84598FE2D]
iPad 2 (8.0 Simulator) [95E5D9E5-6EA7-47DB-AC9D-40880CD78F98]
iPad 2 (8.0 Simulator) [F51C4654-76C8-4B33-A283-8A9B21FF403A]
iPad Air (7.1 Simulator) [0682AD59-0991-4E41-9636-F4450BC4DABC]
iPad Air (8.0 Simulator) [B5748FCD-FE67-46EE-BD4A-C1BE0FA160A7]
iPad Retina (7.1 Simulator) [E2D7C775-F0EC-4AE7-82CD-EAA8E2EE8E25]
iPad Retina (8.0 Simulator) [9C1576B3-58E4-412A-8574-64E60D43E4D0]
iPhone 4s (7.1 Simulator) [6E94CA56-62EC-45BF-AD01-5166FACC75EB]
iPhone 4s (8.0 Simulator) [39E3AD04-62B4-4D10-A60B-D48204785508]
iPhone 5 (7.1 Simulator) [EB5E3DEA-5D12-46B1-A18D-21B06F3FAC26]
iPhone 5 (8.0 Simulator) [0692F6C0-57ED-43EA-9599-A49F3BA86435]
iPhone 5s (7.1 Simulator) [EBB1E555-47B6-410A-98AF-1145728590E3]
iPhone 5s (8.0 Simulator) [26639A3B-F979-4BFD-920D-A6AB9E92D0AB]
iPhone 6 (8.0 Simulator) [22797884-9582-4813-AEFF-9155C0DCCCE6]
iPhone 6 Plus (8.0 Simulator) [DE881BB5-434C-4F38-8BF8-D199BEF57919]

为此,您可以这种方式运行脚本。

$instruments\
-w "C298E193-48FD-451C-9173-A2B70A4B6232" \
-t $TRACETEMPLATE AppLocation \
-e UIASCRIPT Script.js \
-e UIARESULTSPATH reportPath