1

我正在使用testthat. 我正在使用的许多功能都需要一个文件作为输入和/或将一个文件写入输出。

目前,我的 R 包目录结构大致如下:

- R_package_name
    -/tests
        -/testthat.R
        -/testthat
            -/test_package.R

例如,此类别中的函数是read.table()write.table()。前者读取某个文件,后者写入它。

testthat使用给定的 R 包结构为测试创建“示例文件”的标准是什么?我可以创建非常小的示例文件作为输入tests

假设我正在测试write.table()

test_that("check write.table", {

    df = data.frame( n = c(2, 3, 5), s = c("aa", "bb", "cc"), b = c(TRUE, FALSE, TRUE))
    expect_identical(write.table(df), ???)

})

编辑:显然在 R 中可以模拟: https ://rdrr.io/a/cran/testthat/man/with_mock.html

4

1 回答 1

1

我的理解是,标准是将包中的数据作为.RData对象存储在给定包的 \data 文件夹中,如果您想测试读取该数据,您必须调用该数据集,编写一个文件,测试读入,然后清理。

但是,看起来可能有一种方法可以存储原始数据文件,请查看有关处理原始数据的链接。这是另一个关于创建 R 数据包的有用链接。创建 R 数据包

于 2017-11-07T03:08:55.060 回答