我希望能够在不是r 包的项目中使用testthat
和。事实上不使用任何第三方服务。只是普通-old-r 源文件的集合covr
我正在努力找出这是否可能,如果是这样,有关如何设置的说明已经完成。
我发现假设您正在编写一个 r 包。我喜欢避免这种开销。
现有技术:
我希望能够在不是r 包的项目中使用testthat
和。事实上不使用任何第三方服务。只是普通-old-r 源文件的集合covr
我正在努力找出这是否可能,如果是这样,有关如何设置的说明已经完成。
我发现假设您正在编写一个 r 包。我喜欢避免这种开销。
现有技术:
这应该是没有问题的。
首先:我有一个包含应该测试的代码的文件,名为code.R
:
f1 <- function(n, ...) {
rnorm(n = n, ...)
}
第二:然后我有一个名为测试的文件tests.R
:
source("code.R")
test_that("Random tests", {
tmp1 <- f1(10)
expect_type(tmp1, "double")
expect_equal(length(tmp1), 10)
})
第三:然后你可以像这样运行测试和覆盖:
library(testthat)
library(covr)
test_file("tests.R")
res <- file_coverage("code.R", "tests.R")
res
report(res)
多个文件应该没问题。