Jaki jest właściwy sposób na pominięcie wszystkich testów w katalogu testowym pakietu R podczas korzystania z infrastruktury testthat/devtools? Na przykład, jeśli nie ma połączenia z bazą danych, a wszystkie testy polegają na tym połączeniu, czy muszę napisać osobno skip
we wszystkich plikach lub czy mogę gdzieś napisać pojedynczy kod skip
?Pomiń wszystkie testy testowe, gdy warunek nie jest spełniony
Mam standardową konfigurację pakietu, który wygląda jak
mypackage/
- ... # innych rzeczy pakiet
- testy/
- testthat.R
- testthat/
- test-thing1.R
- test-thing2.R
Na początku myślałem, że mogę umieścić test w pliku testthat.R
jak
## in testthat.R
library(testthat)
library(mypackage)
fail_test <- function() FALSE
if (fail_test()) test_check("package")
, ale to nie zadziałało i wygląda na to, że wywołanie devtools::test()
powoduje zignorowanie tego pliku. Sądzę, że alternatywą byłoby przechowywanie wszystkich testów w innym katalogu, ale czy istnieje lepsze rozwiązanie?
W tym przykładzie potrzebowałbyś 'if (fail_test())' ... – Thomas