【问题标题】:Why are 'end' & 'else' statement not counted in code coverage during rspec testing?为什么在 rspec 测试期间,'end' & 'else' 语句不计入代码覆盖率?
【发布时间】:2017-09-05 09:05:23
【问题描述】:

我正在使用 simplecov gem 来查看测试覆盖率。在下图中,我可以看到两个语句 elseend 是白色的。
这些行不计入测试覆盖率吗?如果是,可以做些什么来包含这样的陈述?

【问题讨论】:

    标签: ruby-on-rails rspec simplecov


    【解决方案1】:

    这些不是代码行。你无法测试它们,所以 simplecov 会忽略它们。

    您的if 已被覆盖,因此我们假设结尾已被覆盖。 else 也没有被覆盖,但我们只关心该分支内的代码是否被覆盖。

    SimpleCov 应将未经测试的代码显示为红线,将不可测试的代码显示为灰色。上面的代码有 100% 的测试覆盖率,所以不用担心。

    【讨论】:

      猜你喜欢
      • 2020-06-01
      • 2021-05-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多