【问题标题】:covr shows 0% of coverage while all tests with testthat passcovr 显示 0% 的覆盖率,而所有带有 testthat 的测试都通过
【发布时间】:2019-03-19 18:07:53
【问题描述】:

我已经为大多数功能构建了一个包含单元测试的包。该包具有标准结构:

package:
  - R/
    - file1.R
    - file2.R
    - ...
  - tests/
    - testthat/
      - tests_for_file1.R
      - tests_for_file2.R
      - ...
  - ...

在 R 控制台中调用函数 devtools::check() 没有错误

R CMD check results
0 errors | 1 warning  | 1 note

调用函数devtools::test()也成功

OK:       72
Failed:   0
Warnings: 0
Skipped:  0

但是covr::package_coverage() 给我这个结果

package Coverage: 0.00%
R/file1.R: 0.00%
R/file2.R: 0.00%
...

为什么?

【问题讨论】:

  • 我也遇到过这样的事情。你看过covr::report()的结果了吗?如果有,有什么不同吗?
  • 另外,您的包源代码是否公开可用,例如在 GitHub 存储库中?

标签: r unit-testing code-coverage testthat covr


【解决方案1】:

我找到了问题的答案here

我缺少package/tests/testthat.R 文件,可以使用usethis::use_testthat()usethis::use_test() 进行设置。它帮助了我。

【讨论】:

  • 我已经有了这个文件,但我仍然面临这个问题。有其他人遇到过这个问题吗?
  • 谢谢!我的路径是package/tests/testthat/testthat.R,但它没有用。将其更改为 package/tests/testthat.R 有效。
猜你喜欢
  • 1970-01-01
  • 2018-02-15
  • 1970-01-01
  • 2020-02-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-27
相关资源
最近更新 更多