【问题标题】:Ignore View controllers from XCTest coverage从 XCTest 覆盖中忽略视图控制器
【发布时间】:2017-06-09 16:11:38
【问题描述】:

我第一次参加单元测试。我正在使用 MVVM,我可以使用单元测试(不是 ui 测试)测试几乎所有内容。问题是在覆盖范围内我的控制器类出现并且影响了我的覆盖范围。当然,我总是可以进行 UI 测试来涵盖这些类,但我不想要。是否可以从覆盖范围中忽略 import UIKit 的所有类?

【问题讨论】:

  • 我建议对所有事物进行单元测试,包括视图控制器。如果我在您的团队中,我希望至少能够看到您对视图控制器的覆盖不足。无论你是否对它们进行单元测试,都不要隐瞒真相。
  • 不应该隐藏它们。但我知道我的控制器除了 ViewModel 调用之外什么都没有。我总是可以使用 UI 测试来测试它们。
  • 啊,很好。查看快照测试如何确认布局没有改变? (这些不必在视图控制器级别,但通常是。)

标签: swift unit-testing code-coverage xctest


【解决方案1】:

这是不可能的(目前)。

但代码覆盖率并不是一个有用的指标。您可以在不改进测试套件的情况下增加覆盖率。你应该忽略这个数字。编写测试,直到您确信所有测试都通过的测试运行意味着应用可以正常工作。

或者,为您的视图控制器编写测试。

【讨论】:

  • 另一个问题:好的代码的衡量标准是什么?如果你有一个,也许它也适合测试代码。我没有这样的指标。不是为了代码。不适用于测试代码。
猜你喜欢
  • 2018-12-08
  • 1970-01-01
  • 2014-07-03
  • 2014-09-19
  • 1970-01-01
  • 1970-01-01
  • 2019-12-13
  • 1970-01-01
  • 2015-08-02
相关资源
最近更新 更多