9

我正在为一个 R 包做出贡献,该包广泛使用 C 代码进行计算。

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

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

4

1 回答 1

3

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

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

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

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

于 2013-05-27T19:51:51.250 回答