使用testthat构建测试包;那些需要一个外部文件,建议在/tests/testthat/my-file
。
然而R CMD check
产生
Found the following hidden files and directories:
tests/testthat/my-file
以上是NOTE(Status: 1 NOTE
)
如果我将my-file添加到.Rbuildignore
(devtools::use_build_ignore("/tests/testthat/my-file"
),那么文件很好,在检查过程中会被忽略,因此所有测试都会失败并且无法构建包。
我该如何解决这个问题?我知道NOTE
是可以通过的,但我仍想摆脱它。
答案 0 :(得分:1)
加载API凭证的首选方式(根据Hadley)是通过环境变量。如果要与软件包共享凭据,则可以将它们设置在.onLoad
函数中,该函数将在加载软件包命名空间的情况下运行。如果您只是希望能够使用这些凭据在本地运行测试但不共享它们,那么将它们添加到全局Renviron.site
文件(或者,不太方便地,在工作目录的.Renviron
文件中)。然后你可以从你的包结构中删除这个文件(或者只是.Rbuildignore它)并使测试以环境变量的存在为条件,例如:
if (!identical(Sys.getenv("MY_ENV_VAR"), "")) {
test_all("package")
}