7

testthat/devtools インフラストラクチャを使用しているときに、R パッケージの test ディレクトリにあるすべてのテストをスキップする適切な方法は何ですか? たとえば、データベースへの接続がなく、すべてのテストがその接続に依存している場合skip、すべてのファイルに個別にa を書き込む必要がありますskipか?

次のような標準パッケージのセットアップがあります

mypackage/

  • ... # その他のパッケージ
  • テスト/
    • testthat.R
    • テストする/
      • test-thing1.R
      • test-thing2.R

testthat.R最初は、次のようなファイルにテストを入れることができると思いました

## in testthat.R
library(testthat)
library(mypackage)

fail_test <- function() FALSE
if (fail_test()) test_check("package")

しかし、それは機能せず、呼び出しdevtools::test()はそのファイルを無視するようです。すべてのテストを別のディレクトリに保存するという代替策があると思いますが、より良い解決策はありますか?

4

2 に答える 2

1

サブディレクトリでテストを編成し、条件付きディレクトリの包含を親フォルダーのテストに配置することもできます。

testthatパッケージの「tests」を検討してください。特に、これは興味深いようです。

ここでは、テスト スキャンでサブディレクトリを再帰するものは何も表示されません。

于 2016-02-06T19:10:09.373 に答える