calabash-ios 不适用于 iOS 7.1 模拟器

calabash-ios not working with iOS 7.1 Simulators

我正在尝试使用 Calabash 进行一些自动化 UI 测试,当我 运行 在 iOS 8 个模拟器上运行时一切正常,但是,当我切换时iOS 7 模拟器,它似乎无法完全启动应用程序。

该应用程序将打开,完成初始屏幕,然后不久就会崩溃,calabash 将再次重试。这将无限期地持续下去,直到我手动退出它。

在 运行ning 之间唯一发生变化的是我的设备目标,目前我使用以下设备目标:

DEVICE_TARGET="iPhone 5 (7.1 Simulator)"

当我在 8.4 设备上 运行 时,它看起来像下面这样:

DEVICE_TARGET="iPhone 5 (8.4 Simulator)"

知道为什么这不起作用吗? calabash 不支持 7.1-ios?

更多信息:

如果您能提供任何帮助,我将不胜感激!

更新这个有一些关于如何解决这个问题的建议。

官方表示,Calabash iOS 在 Yosemite 上支持 iOS >= 7.1 模拟器,在 Mavericks 上支持 iOS >= 7.0.3。

您在物理设备上是否遇到同样的问题?

如果你有:

  1. 更改了文件系统上的位置或重命名了 Xcode.app 目录,
  2. 安装了新的 Xcode 版本,或
  3. 安装了新的iOS模拟器

您必须重新启动 Mac 以使 CoreSimulator 环境恢复正常。

话虽如此,我正在为 运行-loop 进行集成测试,但我看到在 Yosemite 上 Xcode 6.4 中启动 iOS 7.1 模拟器时出现无法解释的错误. Yosemite.

上的 iOS 7.1 模拟器似乎无法使用 UIAutomation
$ DEBUG=1 be run-loop instruments \
   launch --app ./CalSmoke-cal.app \
   --device "iPhone 5s (7.1 Simulator)"
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   libsystem_kernel.dylib          0x00000001032a6286 __pthread_kill + 10
1   libsystem_sim_c.dylib           0x0000000102fd4e59 abort + 101
2   com.apple.ScreenReaderCore      0x00000001047d3114 SCRCUncaughtExceptionHandler + 97
3   com.apple.CoreFoundation        0x0000000100691bf5 __handleUncaughtException + 629
4   libobjc.A.dylib                 0x00000001025bebf5 _objc_terminate() + 94
5   libc++abi.dylib                 0x0000000102e4de91 std::__terminate(void (*)()) + 8
6   libc++abi.dylib                 0x0000000102e4d91d __cxa_throw + 124
7   libobjc.A.dylib                 0x00000001025bea9d objc_exception_throw + 298
8   com.apple.CoreFoundation        0x000000010060d2ad +[NSException raise:format:] + 205
9   com.apple.UIAutomation          0x0000000100de96f7 +[UIAXElement initializeAccessibility] + 540
10  com.apple.UIAutomation          0x0000000100dec791 +[UIAXElement uiaxSystemWideElement] + 36
11  com.apple.UIAutomation          0x0000000100dff833 -[UIATarget init] + 300
12  com.apple.UIAutomation          0x0000000100dff6f9 +[UIATarget localTarget] + 53
13  ScriptAgent                     0x0000000100008ea8 0x100000000 + 36520
14  ScriptAgent                     0x0000000100004b17 0x100000000 + 19223
15  ScriptAgent                     0x0000000100006e22 0x100000000 + 28194
16  libdyld.dylib                   0x00000001031795c9 start + 1

我在 运行-loop 上尝试了几个补丁,但没有任何效果。

还有这个来自Console.app

com.apple.CoreSimulator.CoreSimulatorService[81434]: Failed to open 
/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 7.1.simruntime/Contents/Resources/RuntimeRoot/usr/lib/system/host/liblaunch_sim.dylib: 
dlopen(/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 7.1.simruntime/Contents/Resources/RuntimeRoot/usr/lib/system/host/liblaunch_sim.dylib, 1): no suitable image found.  
Did find:
/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 7.1.simruntime/Contents/Resources/RuntimeRoot/usr/lib/system/host/liblaunch_sim.dylib: 
mmap() error 1 at address=0x11837B000, size=0x00002000 segment=__TEXT in Segment::map() 
mapping /Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 7.1.simruntime/Contents/Resources/RuntimeRoot/usr/lib/system/host/liblaunch_sim.dylib