Roxygen2:" loadNamespace(name)出错:没有名为'testthat'的软件包"?

时间:2016-05-31 21:22:43

标签: r class r6

这是上一个问题的后续内容。

How to integrate new R6Class functions stored in independent files into an existing R package?

总之,在尝试加载存储在文件中的函数时。我设法通过在描述中手动手动 NAMESPACE和Collat​​e并重建包来实现。但是,我确信这不是标准做法,因为包已经有一个man文件夹和使用roxygen2创建的.Rd文件。但是,当我尝试使用roxygen2来管理描述中的NAMESPACE和Collat​​e时,会弹出以下错误。

==> devtools::document(roclets=c('rd', 'collate', 'namespace'))

Updating mypackage documentation
Loading mypackage
Error in loadNamespace(name) : there is no package called ‘testthat’
Calls: suppressPackageStartupMessages ... tryCatch -> tryCatchList -> tryCatchOne -> <Anonymous>
Execution halted

Exited with status 1.

工作目录包含一个文件夹test,其中包含testhat.R文件和第二个充满函数的文件夹。

为什么roxygen2会降低产生文档并更新NAMESPACE和DESCRIPTION的任何提示?

1 个答案:

答案 0 :(得分:2)

您需要安装testthat

testthat是一个包

  

单元测试系统设计有趣,灵活且易于设置。

Hadley的test书籍(在线)的R Packages部分是如何使用它的好指南。

事实上,我建议阅读整本书,因为它会向您介绍一些创建包的最佳实践。我已经使用了很多