Xcode 7 UItesting,录制button变灰

我正在尝试使用Xcode 7将UItesting添加到我现有的项目中。但UItesting录制button始终呈灰色。 我在这里错过了什么?

尝试重新启动Xcode。 清理和重build项目并添加新的UItesting目标。 任何人都经历了同样的行为?

FWIW:我有这个问题,事实certificate我试图在错误的操作系统中运行模拟器。

我正在尝试使用iOS8.x,而UITesting只能在iOS9 +中使用。

切换模拟器版本,并出现loggingbutton。

我也陷在这一段时间了。 为了logging,你必须在Xcode认为包含testing的类中。 添加一个文件到你的UItesting目标,如下所示:

import Foundation import XCTest class MyTests: XCTestCase { func testSomething() { } } 

保存文件,清理项目,然后切换到另一个文件,然后返回到这个文件。 录制button应该可用。

我有同样的问题,我的设置是正确的,iOS> = 9.0,目标被添加。

问题是Xcode索引花费了一段时间(大约1小时),索引完成后,录制button变为活动状态。

对我来说,问题是“版本编辑器”窗格打开。 只要我切换回助理编辑器,它的工作。

要启用红色button,您必须将光标放在testing方法上:

在这里输入图像说明

在Xcode 8.3上有相同的问题。

我已经删除了tearDown方法

  override func tearDown() { super.tearDown() } 

因为不需要使用它。 只要我加回来,loggingbutton被启用。

这是一种愚蠢的,但错过了我读的一些文章。

确保你有一个UITesting目标,一个普通的testing目标没有为我做。

我做了一些事情来启用我的loggingbutton:

  1. (可选,推荐) – 删除项目的所有testingscheme和testing目标,通过创build一个新的UITest目标来重新开始。
  2. 确保您的UITestscheme和主项目运行scheme指向相同的目标。
  3. 尝试删除你的其他UITest计划,如果他们可以很容易地重新创build/不是绝对重要的。
  4. 产品>(按住ALT键)>清理生成文件夹
  5. 产品>清洁(仅用于安全措施)
  6. closures项目,退出Xcode。
  7. 退出模拟器。
  8. 最后,重新打开Xcode,加载你的项目。 导航到你的UITest文件,喜悦的红色小button应该可用。

此外,请确保您的构build/运行目标设置为iPhone X 9.X.

我发现了另一个我从未见过的解决scheme。

如果您inheritance了XCTestCase ,请将您的类更改为inheritance, 保存该文件 ,然后将其更改回您的子类名称。 没有清洁或build设需要。

对于我的项目我有一个XCTestCase的XCTestCase ,我们称之为APPMyTestCase 。 我经常发现loggingbutton变灰,有时候每个testing方法旁边的绿色/红色小button都不会出现,可以单独运行。 如果我把我的子类更改回XCTestCase一秒钟,一切都可以再次运行。

改变这个:

 class APPLoadingPageUITests: APPMyTestCase { // tests here } 

对此:

 class APPLoadingPageUITests: XCTestCase { // tests here } 

然后回到这个:

 class APPLoadingPageUITests: APPMyTestCase { // tests here } 

这为我修好了。

确保每个文件只有一个XCTestCase子类。 你想要文件名和类名匹配。

根据我的经验,即使您有UItesting工作,如果您在同一个文件中添加工作XCTestCase子类的新子类,loggingbutton将被禁用(尽pipe所有其他testing用户界面将继续工作)。

您应该导入您想要testing的视图类。 然后把光标放在testing方法中。