对R包的/ src文件夹中的代码进行单元测试?

Dav*_*uer 8 c unit-testing r testthat

我正在贡献一个R包,它广泛使用C代码进行计算.

我们已经开始使用testthat包编写R函数的测试,将测试放在inst/tests以下说明中.

testthat包是否适合直接测试C函数(例如没有R接口的那些)?或者我们找到一个单独的C测试包?如果是这样,1)这些测试应该去哪里,2)我如何让它们在运行期间运行R CMD check,3)是否在这种情况下特别适合的任何C测试包?

Dir*_*tel 3

我觉得这个问题有点困惑:

  • 您要么认为您的 C 代码支持可以在 R 上测试的更高级别的 R 函数(正如您似乎所做的那样)

  • 或者您认为您的 C 代码更加独立,在这种情况下您可以使用无数的 C 单元测试框架之一。

许多使用 Rcpp 的包还通过 RUnit 或 testthat 使用广泛的单元测试。你可以看看那个。我通常在 R 函数级别进行测试,这通常意味着对底层 C++ 函数的测试。