【问题标题】:xcode xctest must fail but pass anywaysxcode xctest 必须失败但无论如何都会通过
【发布时间】:2014-04-26 06:42:09
【问题描述】:

我是在 xcode 中使用测试的新手,使用它时遇到问题。我正在尝试将 xctest 用于我的应用程序,但所有测试都通过了。即使是那些必须失败的人。在清理并再次构建项目后,它仍然通过所有测试,例如。克:

-(void)testIfFails
{   
    XCTAssertTrue(NO);
}

上面的测试在我的项目中成功了。谁能解释一下它是如何工作的,或者我做错了?

【问题讨论】:

  • 如何开始测试?如预期的那样,此代码应该会失败。
  • 我去测试导航器然后点击运行。运行所有或单个测试会给我相同的结果。
  • 在测试中设置断点。似乎没有一个正在运行,这将算作通过。
  • 查看此问题:[xcode-5-says-tests-failed-but-shows-green-checkmarks][1] Xcode 中的错误并在版本 5.1 [1] 中更正:stackoverflow.com/questions/19233626/…

标签: ios objective-c xcode5 xctest


【解决方案1】:

这绝对是 Xcode 疯狂的时刻之一。

尝试以下方法之一:

  1. 产品 -> 清洁
  2. 按住 ALT 按下产品 -> 清理构建文件夹
  3. 窗口 -> 管理器 -> 项目 -> 选择您的项目 -> 删除派生数据
  4. 关闭 Xcode,重新启动计算机(它曾经对我有用)。
  5. 弄乱了测试例程代码。也许 Xcode 缓存了一些东西。

如果没有任何效果,你应该报告一个错误:https://bugreport.apple.com/

【讨论】:

  • 做了所有这些但没有成功。我认为错误报告就是这种情况。 =/
【解决方案2】:

解决了这个问题。我使用的测试目标是我们创建项目时的默认目标。在测试之前,我从 OCUnit 迁移到 XCTest,然后开始我的工作。没有什么可以使测试正确运行。在尝试了我得到的所有建议之后,我决定创建一个新的测试目标并让它在第一次尝试中工作。希望对大家有所帮助。

【讨论】:

    猜你喜欢
    • 2023-02-25
    • 2018-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-23
    • 1970-01-01
    相关资源
    最近更新 更多