在一个会话中运行带有不同参数的UITest

问题描述 投票:0回答:2

我正在尝试运行UITest,它需要在运行过程中更改启动参数,并使用新参数重新启动应用程序。从理论上讲,XCUIApplication.launch应该同时终止并重新启动带有新参数的应用程序,但是我发现它不可靠且并不总是发生。然后我切换到:

func launchAndWaitForLoadingViewFinish() {
    terminate()
    sleep(5)
    launch()
    waitOnLoadingView()
}

要手动终止,然后等待以确保它已关闭并且希望在内存不足之前重新启动该应用。但是仍然没有运气,它有时会失败。任何建议都将受到高度赞赏。

ios xcode testing xctest uitest
2个回答
0
投票

您应尝试https://github.com/Subito-it/SBTUITestTunnelHost

此工具允许在测试运行时同步执行macOS控制台命令。

您需要的控制台命令是

xcrun simctl terminate ...
xcrun simctl launch ...

-1
投票

睡眠在最佳情况下是有问题的。 wait(for:timeout:)功能可能会做得更好。

© www.soinside.com 2019 - 2024. All rights reserved.