-2

这是对上一个问题的跟进。

如何将存储在独立文件中的新 R6Class 函数集成到现有 R 包中?

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

==> 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.

工作目录包含一个带有 testhat.R 文件的文件夹 tests 和一个充满函数的第二个文件夹。

任何提示为什么 roxygen2 正在生成文档并更新 NAMESPACE 和DESCRIPTION?

4

1 回答 1

2

你需要安装testthat


testthat是一个包

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

Hadley 的R Packages书(在线)的测试部分是关于如何使用它的一个很好的指南。

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

于 2016-05-31T22:33:58.607 回答