可以在Xcode Simulator中直接进行隔离的视图控制器UI测试吗?

时间:2018-11-29 09:42:26

标签: ios xcode xctest xcode-ui-testing ui-testing

是否可以通过Xcode Simulator运行UI测试,例如通过从seconds手动启动视图控制器?我熟悉通过Swift中的XCTestCase(或NSProcessInfo)为测试配置环境,但在某些情况下,仅显示一个视图控制器并运行它确实会更容易在它上面的一系列手势...而不是在某些条件下导航到它。

虽然我可以创建另一个目标来执行此操作,然后进行UI测试,但我想知道是否有更简单的方法。

1 个答案:

答案 0 :(得分:0)

您无法在UIKit类中手动初始化XCTestCase(或任何其他UIViewController类)并在其上运行UITests。

您的UITest测试代码是作为一个单独的过程运行的,综合了应用程序中UI响应的事件。换句话说,您在UITests中编写的代码在与您测试的应用程序交互的Test Runner应用程序上运行。 Test Runner应用只能与主应用的UI元素进行交互。它不能直接访问主应用程序的代码或直接查看层次结构。因此,您无法在测试期间添加XUIApplication().launchArguments

正如您在问题中已经提到的那样,您可以添加另一个仅显示要测试的View Controller的目标。但这对我来说并不实用。

或者(您也提到过)可以在UITest中设置$mail->send();,并在设置启动参数后在应用启动时直接显示ViewController。