假設我有這樣的測試:如果把外部文件testthat測試
require(testthat)
context("toy test")
test_that("toy", {
df = my.read.file("test.txt", header=TRUE)
expect_true(myfunc(df) == 3.14)
})
這個測試依賴於外部文件test.txt,我應該在哪裏把這個文件呢?
假設我有這樣的測試:如果把外部文件testthat測試
require(testthat)
context("toy test")
test_that("toy", {
df = my.read.file("test.txt", header=TRUE)
expect_true(myfunc(df) == 3.14)
})
這個測試依賴於外部文件test.txt,我應該在哪裏把這個文件呢?
你把這些在testthat
文件夾(內tests
)。在那裏,您可以包含任何可用於測試的「外部」文件(或者提供用戶可能會發現信息的其他解釋,例如在「.txt」文件中)。您也可以在這裏找到您的.r
測試文件。通過包括文件的路徑(例如,到您的data
文件夾 - 使用相對路徑),您也可以從其他位置加載文件。但是,這可能會導致脆弱的基礎架構,因爲您可能無法始終依賴該外部位置可用,在這種情況下,testthat
將在找不到該文件時引發錯誤。
鏈接到一個文件的tests
外的一個例子,請參見here。但是,當你這樣做時要小心。
在正確的地方似乎是(有點直覺)/path/to/project/tests/testthat
。