2

オブジェクトを .rds または .rda として保存するテストを記述して、将来のテスト実行でコード実行の結果と保存されたオブジェクトを比較できるようにする簡単なワークフローはありますか? これにより、やや複雑な値を返す関数が正常に動作していることを簡単に確認できます。

たとえば、次のようなものです。

test_obj(res <- lm(y ~ x, data.frame(x=1:3, y=5:7)))

これは、*extdata/test_obj.res.rds* が存在しない場合、上から *inst/extdata/test_obj.res.rds* に作成されますが、res存在する場合は、identical/all.equal などになります。 . rds から復元されたオブジェクトを含む、新しく生成されたオブジェクト。

私はそのようなテストが非常に便利だと思います.RUnit / svUnit / testthatがそのようなものを実装していないことに少し驚いています.

testthat::make_expectationは近いですが、テキスト表現をコピーしてファイルに貼り付けるよりも、自動化されたストア/取得 rds を使用することをお勧めしますtestthat::make_expectation。 R ファイルですが、それでもプロセスを容易にする自動化が少しあります)。

4

2 に答える 2