Ios8 使用Appium自动化iOS 8应用程序会导致应用程序冻结

Ios8 使用Appium自动化iOS 8应用程序会导致应用程序冻结,ios8,instruments,appium,Ios8,Instruments,Appium,我们有一个应用程序,我们用Appium运行自动化测试。我们可以通过Appium在设备和模拟器上启动应用程序。但是,在Appium发送2-3个tap命令后,应用程序会挂起并冻结。冻结后,Appium无法在屏幕上找到任何其他元素 我们考虑过使用Xcode 6.0.1工具编写测试脚本,但是当脚本运行时,应用程序也会挂起 手动测试时,应用程序的性能与预期一致。只有当我们尝试使用Appium或Xcode的工具在其上运行自动化时,它才会挂起。我们使用的是Appium v1.3.0-beta1和Xcode 6

我们有一个应用程序,我们用Appium运行自动化测试。我们可以通过Appium在设备和模拟器上启动应用程序。但是,在Appium发送2-3个tap命令后,应用程序会挂起并冻结。冻结后,Appium无法在屏幕上找到任何其他元素

我们考虑过使用Xcode 6.0.1工具编写测试脚本,但是当脚本运行时,应用程序也会挂起

手动测试时,应用程序的性能与预期一致。只有当我们尝试使用Appium或Xcode的工具在其上运行自动化时,它才会挂起。我们使用的是Appium v1.3.0-beta1和Xcode 6.0.1


这似乎是一个与类似的问题,但我们的测试设备已经在8.0.2上了。

因此,在iOS 8中,记录太多数据(尤其是记录API响应时)可能会在自动化过程中导致竞争状况。我们能够通过禁用应用程序的日志记录来解决自动化冻结问题


由于@tbao在这篇文章中的精彩分析,我们发现了解决方案:

有办法在运行时重新启动Appium服务器,这帮助我们克服了冻结问题:

有关更多详细信息,请查看我的博客:


在iOS上自动化web应用程序(Safari)时遇到了同样的问题,通过执行install命令将mac上可用的appium 1.15.1切换到1.16.0-beta.3解决了这个问题:

npm install -g appium@beta --unsafe-perm=true --allow-root