使用Xcode 7运行UITesting时出现'NSInternalInconsistencyException'

SuP*_*ter 36 xcode ios swift xcode7 xcode-ui-testing

好吧,到目前为止,我还没能在任何测试版中运行此测试.我遇到的一些问题是在这里这里

现在,我觉得我错过了一些东西.

到目前为止,这是我的进步

  1. 在创建新项目时启用"UI测试"选项.事实上,这为我增加了一个目标.所以我应该好好去 - 或者我想. 在此输入图像描述
  2. UI测试下的swift文件已经导入了"XCTest",并且是"XCTestCase"的子类.
  3. setup()启动应用程序XCUIApplication().launch()
  4. 我添加了以下内容(通过点击"记录"按钮) 在此输入图像描述

然后,我运行了这个测试.

甚至在调用测试之前,整个事情都失败了,在使用以下内容在setup()中启动应用程序之后

***断言失败 - [XCUIApplication init],/ Library/Caches/com.apple.xbs/Sources/XCTest_Sim/XCTest-8170.3/XCTestFramework/UI Testing/XCUIApplication.m:76/Users/UserName/Documents/Projects/Testing/UiTesting/UITestingApp/UITestingApp.swift:0:错误: - [UITestingApp.UITestingApp testSimpleTap]:failed:捕获"NSInternalInconsistencyException","没有通过测试配置指定的目标应用程序路径:
testBundleURL:file:/// Users/UserName /图书馆/开发商/ CoreSimulator /设备/ E3201DC2-CAD3-48C3-95F5-15E18DCA1836 /数据/集装箱/包/应用/ 8B33FC59-FC03-41F8-BD21-43D81BA2D355/UITestingApp-Runner.app /插件/ UITestingApp.xctest /
productModuleName :( null)testsToRun:(null)reportResultsToIDE:no sessionIdentifier:<__ NSConcreteUUID 0x7f93e146c0b0> F242796B-ED26-4AA7-861A-540D2D93CB8F pathToXcodeReportingSocket:(null)disablePerformanceMetrics:no treatMissingBaselinesAsFailures:no baselineFileURL:(null)targetApplicationPath :(null)targetApplicationBundleID:(null)reportActivities:no

任何人遇到这个或对我可能缺少什么有任何建议?

注意:我确实将UI测试目标的"目标应用程序"设置为我的应用程序

更新:我注意到这适用于Xcode的所有beta/final版本 - 相应地更新了标题

Mat*_*son 47

我有一个类似的问题,我的错误是试图在常规测试目标中使用UI测试代码.一旦我创建了一个新目标,从"iOS UI Testing Bundle"开始并将代码复制到那里,错误就消失了.这是指向正确方向的线程:https: //twitter.com/punksomething/status/609505357132500993 "是的,我试图在常规测试目标中使用UI测试.必须创建一个新添加的UI测试目标"

  • 这个应该是正确的答案。 (2认同)

Vik*_*era 18

当我尝试向我的单元测试目标添加新类时,我发生了这种情况,但我选择了UI测试用例类模板而不是单元测试用例类模板.

确保始终选择合适的一个.尽管它们都是XCTestCase子类并且您将它们分配给正确的目标,但在选择错误的模板时会抛出此错误.

在此输入图像描述


小智 6

重命名目标后,我得到了这个。解决方案是在我的UITest目标中将“目标应用程序”设置为“无”,然后进行构建。在此之后,我将“ None”设置回我的应用程序,并且错误得到解决。我认为重命名很有可能会破坏ui测试目标的“目标应用程序”设置。


SuP*_*ter 2

经过不断的调整,将“Xcode Preferences”中的派生数据位置从“Legacy”更改为“Custom”并使其正常工作!

在此输入图像描述

  • 这样做并不能解决我的问题:( (4认同)