Xcode UITest Record 按钮被禁用

Posted

技术标签:

【中文标题】Xcode UITest Record 按钮被禁用【英文标题】:Xcode UITest Record button is disabled 【发布时间】:2015-11-25 16:28:08 【问题描述】:

以前有人见过这种情况吗?我无法运行 UITests,因为该按钮已禁用。我没有在网上找到任何帮助。我已经删除并添加了一个新的测试目标,重新启动 Xcode 并删除了派生数据。这些都不起作用,我不知道下一步该尝试什么。

【问题讨论】:

我从来没有找到解决这个问题的方法,但突然有一天它起作用了,从那以后它又起作用了。 【参考方案1】: 您必须在项目中创建一个新目标。 脚步: 1) 文件 > 新建 > 目标 2) 在左侧框中选择:ios > 测试 3) 在右框中:iOS UI 测试包 4)运行你的应用程序 5) 记录你的动作 6)做出断言

【讨论】:

我不完全确定问题出在哪里。我认为有点派生数据错误。几天后重新启动我的macbook后,它又可以工作了。没有进行其他更改。我会接受你的回答,因为在大多数情况下,这正是导致按钮变灰的原因:)【参考方案2】:

另一个可能的原因是 UI 测试目标没有成功构建/运行。

转到产品>测试并确保没有错误。您还应该在 Test Navigator 中看到测试用例(如果看不到,则无法识别)。

【讨论】:

【参考方案3】:

我遇到了同样的问题,终于找到了解决方案。

    在链接到 UI 测试目标的文件中编写新的 UI 测试。 在新的测试中写入 XCTFail("")(这将使测试失败) 运行您的 UI 测试,它们应该会失败。 删除您添加的 XCTFail(""),红色按钮现已启用。

【讨论】:

【参考方案4】:

对我来说,如上所述删除~/Library/Developer/Xcode/DerivedData/,并让 Xcode 重新索引项目,但我必须确保不中断索引。索引需要一段时间,如果它被打断,它似乎不会从它停止的地方开始打包。至少对于 XCUITest 目标而言。

【讨论】:

【参考方案5】:

尝试删除 ~/Library/Developer/Xcode/DerivedData/ 并让 xcode 重新索引您的项目。这应该可以解决问题

【讨论】:

【参考方案6】:

确保 UI 测试文件的名称与其类相同。

【讨论】:

【参考方案7】:

我刚刚通过在我的测试类中注释掉一个失败的测试来解决这个问题。运行测试,使其变为绿色,然后将光标放在新行上(下面注释掉的测试),“记录”按钮再次变为红色。

您可以在您的应用程序中进行其他失败的测试,但不能在 Xcode 中处于活动状态的文件中。

在 Xcode 9.0 中

【讨论】:

【参考方案8】:

点击里面的测试函数。您应该首先选择测试方法。通常当按钮未激活时,这意味着 xcode 不知道要记录哪个测试。

【讨论】:

以上是关于Xcode UITest Record 按钮被禁用的主要内容,如果未能解决你的问题,请参考以下文章

在记录的 Xcode UITest 会话中,vei 字符(向下插入符号)是啥意思?

XCode 中禁用的 UITests

Xcode7 UITest UnitTest 自动化测试学习

Xcode 4 菜单“构建”和“清理”选项被禁用

UITest 中断处理程序调用 tap() 两次

构建 Xcode UITest 失败并出现“打开输入文件时出错”