我正在开发使用XCUITest方法测试界面的iOS应用。我有一个基本的用户界面测试在第一文件中设置AppUITests.swift
其确实let app = XCUIApplication()
为的构件XCTestCase
的子类,和后来确实app.launch()
在setUp()
方法。此文件中的测试一切都很好。
我想为应用程序的第一个主要“模式”中的UI测试创建一个新的测试套件,因此我创建了一个新文件MainModeUITests.swift
并复制了相同的代码。我的计划当然是在此模式下测试UI工作流,但是在此新文件中,应用程序signal SIGABRT
在XCUIApplication()
调用所在的行崩溃。
目前,我正在模拟器上进行测试,甚至还没有进行设备测试。SIGABRT
UITesting为什么会在应用程序上抛出任何想法?我为什么不能在不同的测试套件中调用它,这是有原因的吗?有没有一种方法甚至可以将UI测试分成多个快速文件?
我弄清楚了:我有两个目标(一个用于单元测试,另一个用于UI测试)。我不小心将UI测试文件添加到了非UI测试目标中,因此,当从两个目标中运行测试时,XCUIApplication()方法都尝试以单元测试的方式访问应用程序,而该单元测试不使用XCUITest,不喜欢。解决方案:从另一个测试目标上的“编译源”中删除所有XCUITest源。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句