8
我正在貢獻一個R包,它大量使用C代碼進行計算。單元測試R包中/ src文件夾中的代碼?
我們已經開始使用testthat包編寫R功能的測試,將測試放在inst/tests
之後的instructions here之後。
Testthat包是否適合直接測試C函數(例如那些沒有R接口的函數)?還是我們找到一個單獨的C測試包?如果是的話,1)這些測試應該在哪裏進行,2)我如何在R CMD check
期間讓它們運行,以及3)在這方面特別適合的任何C測試包?
有一組調用C函數的R函數,我可以從R中測試這些函數。但是,也有一些C函數從不會從R中調用,並且我們在重新生成時會產生更多這些函數,但是它確實不是一個獨立的庫。 –
我推斷,基於[Rcpp包描述](http://cran.r-project.org/web/packages/Rcpp/index.html),使用Rcpp可以大大簡化將R封裝器寫入C函數,一個允許將C++函數和類暴露給R級的框架「。也許我繼承的方法不是最理想的,但我們傳遞了許多不同類型參數的列表。 –
如果您閱讀了Rcpp(特別是我們所說的_Rcpp attributes_),您將會看到包裝C(和C++)函數現在變得微不足道並且完全自動化。 –