13

我有一堆测试,我不希望它们在 CRAN 检查或 Travis CI 构建期间运行。它们要么长时间运行,要么可能导致写入网络数据库的事务/并发冲突。将它们(从 R CMD 检查测试中)分离出来的哪种方法最适合testthat

我应该把这些测试放在一个单独的文件夹中吗?我应该标记他们的文件名并使用正则表达式吗?(例如,在 test_package 中使用过滤器参数来跳过@Jeroen 的测试

http://cran.r-project.org/web/packages/policies.html

长时间运行的测试和小插曲代码可以作为可选的检查,但要确保剩下的检查确实锻炼了包的所有功能。

4

2 回答 2

8

仅供参考:testthat0.9 现在带有一个skip()功能。

但是,我似乎无法弄清楚如何/在哪里使用它。放在我的test_that()函数中,测试无论如何都会运行。如果你把它放在前面testthat(),那么skip()会抛出一个错误。

于 2014-09-26T21:12:39.327 回答
6

如果您将它们放在 内的另一个目录中tests,那么您仍然可以使用 手动测试它们test_dir(),但它们不会使用test()or运行R CMD check

例如 R6 有一些手动测试:https ://github.com/wch/R6/tree/master/tests

于 2014-09-04T14:16:57.890 回答