告诉 testthat 在自定义文件夹结构中的特定路径上工作

Telling testthat to work on specific paths in a custom folder structure

我在一家采用非正统方式组织文件夹的公司工作,我希望能够告诉 testthat 它应该在哪个文件夹中查找我的函数。 例如,使用以下文件结构:

.
├── data
│   ├── input
│   └── output
└── src
    ├── Ex
    ├── Py
    │   └── tests
    └── R
        └── tests

我想告诉testthat,我所有的测试都在./src/R/tests,我的代码在./src/R/。有没有办法指定这些路径,以便包知道在哪里寻找文件?

您可以 source 测试和使用函数 test_dir:

library(testthat)

path <- 'src/R'
files <- file.path(path,list.files(path,pattern='\.R$'))
lapply(files,source)

testresults <- test_dir('src/R/tests/testthat',
                 reporter = "list",
                 env = test_env(),
                 start_end_reporter = TRUE,
                 load_helpers = TRUE,
                 stop_on_failure = FALSE)