Qual è il modo corretto di saltare tutti i test nella directory di test di un pacchetto R quando si utilizza l'infrastruttura testthat/devtools? Ad esempio, se non vi è alcuna connessione a un database e tutti i test si basano su tale connessione, è necessario scrivere uno skip
in tutti i file singolarmente o posso scrivere un singolo skip
da qualche parte?Salta tutti i test di test quando la condizione non è soddisfatta
Ho una configurazione pacchetto standard che assomiglia
mypackage/
- ... # altre cose pacchetto
- test/
- testthat.R
- testthat/
- test-thing1.R
- test-thing2.R
In un primo momento ho pensato che avrei potuto mettere un test nel file testthat.R
come
## in testthat.R
library(testthat)
library(mypackage)
fail_test <- function() FALSE
if (fail_test()) test_check("package")
ma, che non ha funzionato e sembra che chiamare devtools::test()
semplicemente ignora quel file. Immagino che un'alternativa sarebbe quella di memorizzare tutti i test in un'altra directory, ma c'è una soluzione migliore?
In questo esempio, è necessario 'if (fail_test())' ... – Thomas