我们目前面临的问题是我们的UITest耗时太长。
原因是上一次UITest销毁应用的时间在20 - 50秒之间。对于90分钟的UITest,我们目前一轮测试的时间为90分钟(由于90分钟的限制,目前在CI上失败)。
下面是测试步骤的一小部分输出。
2018-05-18 11:15:34.757243+0200 OurAppUITests-Runner[46090:16633867] Currently executing: "Given the app is launched"
t = 0.21s Given the app is launched
t = 0.21s Open de.ourApp.ourApp
t = 0.26s Launch de.ourApp.ourApp
t = 0.26s Terminate de.ourApp.ourApp:46132
t = 32.21s Wait for de.ourApp.ourApp to idle我们尝试在每个UITest的末尾终止应用程序,但它只是将“等待”时间移动到UITest的末尾。
我们使用Cucumberish从小黄瓜文件中生成测试。但是我们使用XCUITests来运行测试。
我会感谢每一个可以导致终止花费这么长时间的原因。
发布于 2018-05-22 22:41:53
Git二分图显示,当为Test Target启用线程消毒器时,问题就开始了。禁用它解决了这个问题。
我可能会开始一个新的问题或者/打开一个关于这个问题的雷达,因为当测试在Xcode中运行时,这个问题不会发生。只有通过xcodebuild (fastlane),它们才浮出水面。
发布于 2020-12-28 17:32:11
我对你的问题没有确切的答案,但有另一种方法可以解决你的时间限制问题。
您可以使用并行化,它可以同时在3个不同的模拟器中运行功能文件。为此,您需要编辑您的测试目标方案。在方案编辑菜单中,选择Build选项卡,然后选中Parallelize Build复选框。
现在尝试测试它,终止仍然需要时间,但现在将至少终止3个测试,而不是1个。
https://stackoverflow.com/questions/50463407
复制相似问题