gpt4 book ai didi

testthat 包的 R 代码覆盖率

转载 作者:行者123 更新时间:2023-11-28 19:42:06 26 4
gpt4 key购买 nike

是否有任何工具可以使用 testthat 包评估 R 脚本的代码覆盖率?除了在 an RJournal article future 工作部分提及该主题外,我在 Google 上什么也没找到。 .

最佳答案

有新来的covr package这似乎可以做你想做的一切,甚至更多!它提供与各种 CI 服务和 shiny 的集成。它适用于任何类型的测试基础设施(testthat、RUnit 等),也适用于编译代码。


以下只是我快速编译的一个非常简单的演示案例,以帮助您入门。

install.packages("covr")

添加一个文件 testcovr/R/doublefun.r 包含

doublefun <- function(x, superfluous_option) {
if (superfluous_option) {
2*x
} else {
3*x
}
}

和一个文件 testcovr/tests/testthat/test.doublefun.r 包含

context("doublefun")

test_that("doublefun doubles correctly", {

expect_equal(doublefun(1, TRUE), 2)
})

然后运行例如

test("testcovr")
## Testing testcovr
## doublefun : .

library(covr)
package_coverage("testcovr")
## doublefun : .
##
## Package Coverage: 66.67%
## R/doublefun.r: 66.67%
zero_coverage(package_coverage("testcovr"))
## doublefun : .
##
## filename first_line last_line first_column last_column value
## 3 R/doublefun.r 5 5 9 11 0

关于testthat 包的 R 代码覆盖率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12313886/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com