如果我在模拟器上运行 UITest,它们会运行得更快,每次交互都会以某种方式更快。模拟器大约需要 20 秒,而真实设备大约需要 2 分钟。
这就像我看着树懒点击真实设备上的按钮。
一些信息:
- Xcode 9.2
- 设备:iPhone 6 plus (iOS 10.1.1) 和 iPad Air (10.3.3)
- 配备 MacOS Sierra 10.12.6 的 MacBook Pro(视网膜显示屏,15 英寸,2015 年中)
- swift 4
- 模拟器:iPhone 6 (iOS 11.2)
我注意到运行 iOS 11.2.6 的 iPhone 6 plus 运行 UITest 的速度明显更快。这不是性能问题,而是空闲问题。
有什么想法吗?
最佳答案
我需要做两件事
禁用动画
.
这是最重要的,因为 UITests 实际上一直在等待应用程序空闲(而不是处于动画状态)。使用 UITests,我想检查 UI 流程是否仍然完好无损,而不是 View 转换动画是否仍然有效,这是 iOS 本身的工作。
切换到 iOS 11+
我注意到 iOS 11 比 iOS 10 快得多。
经过这些更改后,UITest 再次变得很快:)
关于ios - Xcode Native UITests 在真实设备上非常慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50174063/