【问题标题】:Can't run UI Testing on older project无法在旧项目上运行 UI 测试
【发布时间】:2015-09-20 09:57:21
【问题描述】:

我正在尝试在旧项目上使用 Xcode 7 添加和运行 UI 自动化测试。 这是我所做的:

  1. 添加了新的 UI 测试目标
  2. 将该目标的编译器版本更改为默认编译器 (Apple LLVM 7.0)
  3. 使用 iPhone 6 Plus iOS9 模拟器录制了一个测试(效果非常棒)

现在,当我尝试运行记录的测试时,出现以下错误:

失败:捕获“NSInternalInconsistencyException”,“没有目标 通过测试配置指定的应用程序路径: testBundleURL:file:///xxxxxxxxxxx/PlugIns/PageonceUITests.xctest/ 产品模块名称:(空) 测试跳过:(空) 测试运行:(空) 报告结果到IDE:否 sessionIdentifier:<__nsconcreteuuid> 7045B650-CDAF-4EC9-9738-83F78E1514D8 pathToXcodeReportingSocket:(null) disablePerformanceMetrics: 没有treatMissingBaselinesAsFailures: 没有 基线文件URL:(空) 目标应用程序路径:(空) targetApplicationBundleID:(null)

【问题讨论】:

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


    【解决方案1】:

    此错误似乎是在抱怨添加 UI 测试目标时选择了“要测试的目标”字段。UI 测试目标 -> 常规选项卡下的“目标应用程序”属性是否正确显示您选择的主应用程序? 一个快乐的配置应该是这样的,

    2015-10-04 17:30:50.960 XCTRunner[22941:4703128] Found configuration <XCTestConfiguration: 0x7fbf3050c8b0>
    
    testBundleURL:file:///Users/username/Library/Developer/Xcode/DerivedData/App-fxeyzrynjcscxzaxjvmnormcjhbr/Build/Products/Debug-iphonesimulator/APPUITests-Runner.app/PlugIns/APPUITests.xctest/
                  productModuleName:APPUITests
                        testsToSkip:(null)
                         testsToRun:(null)
                 reportResultsToIDE:YES
                  sessionIdentifier:<__NSConcreteUUID 0x7fbf30503430> B324DF9D-769F-4217-901F-24482A719005
         pathToXcodeReportingSocket:(null)
          disablePerformanceMetrics:no
    treatMissingBaselinesAsFailures:no
                    baselineFileURL:(null)
              targetApplicationPath:/Users/username/Library/Developer/Xcode/DerivedData/APP-fxeyzrynjcscxzaxjvmnormcjhbr/Build/Products/Debug-iphonesimulator/AppName.app
          targetApplicationBundleID:com.bundle.appBundle.app.dev
                   reportActivities:no
    

    【讨论】:

    • 我遇到了同样的问题,this 解决了。
    【解决方案2】:

    这可能是由于您的 Target 设置存在问题。

    试试下面的。

    1. 删除现有目标。
    2. 通过再次选择“iOS UI 测试包”创建一个新目标。
    3. 然后一一链接您的测试文件。

    有效。

    【讨论】:

      【解决方案3】:

      我遇到了同样的问题并通过不使用此答案中描述的旧版构建位置解决了它:https://stackoverflow.com/a/32658990/901334

      如果我使用“旧版”,则可以记录 UI 测试,但在我尝试运行它们时会失败。使用“唯一”作为设置,它们工作正常。 (这可以用新项目重现)

      Xcode → 首选项 → 位置 → 派生数据 → 高级... → [x] 唯一

      【讨论】:

        【解决方案4】:

        我在物理 iPad 上遇到了同样的问题。 当我最终删除应用程序及其所有数据,然后关闭并重新启动设备时,问题就解决了。

        【讨论】:

          【解决方案5】:

          您必须在您的 UITest 目标中的相关“构建设置”部分中添加自定义“用户定义的设置”属性:

          用钥匙:

          TEST_TARGET_NAMEYourTargetName
          USES_XCTRUNNERYES(可选)

          现在您可以运行 UI 测试了。

          【讨论】:

            【解决方案6】:

            当您在单元测试目标中有 UI 测试文件时会发生这种情况,请确保该文件位于正确的目标中。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 2019-12-03
              • 1970-01-01
              • 1970-01-01
              • 2013-02-08
              • 2016-08-31
              • 2016-03-01
              • 2018-10-24
              相关资源
              最近更新 更多