問題タブ [testthat]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - CRAN としてチェックしますが、テストをスキップしないでください
拡張 CRAN チェックdevtools::check()
を実行するだけでなく、としてマークされているテストハット テストを実行する簡単な方法はありますか?skip_on_cran()
基本的に、できる限り包括的なテストを実行したいと考えています。すべての CRAN チェックと、すべての単体テストです。
r - 関数 expect_that からの testthat はエラーになります
誰かが私を助けて 、停止メッセージに追加されたexpect_that
場合になぜ機能しないのかを説明できますか。[]
つまり、機能しますf1
がf2
機能しません。
r - データフレームの結果の一部として testthat のエラー メッセージをキャプチャするにはどうすればよいですか?
私は testthat パッケージを使用してテストを実行していますが、これまでのところ非常に満足しています。現在、test_file() 関数を使用してすべてのテストを実行し、その結果をデータフレームとしてキャプチャしてから、追加の分析を行っています。
ただし、私がやりたいことの 1 つは、データフレーム自体の障害からエラー メッセージを取得することです。いくつかのメッセージがいかに説明的であるかが本当に気に入っています。追加情報は下流にあると素晴らしいでしょう。以下は私が考えている例です。「平均絶対差: 1」メッセージを の列としてキャプチャしたいと思いますdf
。
メッセージが生成されています。Reporter クラスの 1 つでこれらのメッセージをインターセプトするのはそれほど難しいことではないようですが、ドキュメントとソースを調べたところ、機能が組み込まれているとは思えません。
それで、現在のバージョンのtestthatでこれを行うことは可能ですか?
そうでない場合、この機能を有効にするには何が必要ですか? 私はプロジェクトに貢献したいと思っていますが、R の OOP にあまり慣れていないので、どこから始めればよいかわかりません。
ご意見ありがとうございます。
r - 失敗やエラーを報告しない R テスト
を使用して奇妙な結果を見つけていtestthat
ます。を実行するtest_file
と、個々のtest_that
呼び出しが検出されますが、コンテキストの名前以外のコンソールへの出力はなく、返さdata.frame
れる結果は期待どおりではありません。私は本当にばかげたことをしていると思いますが、多くの代替案を試して同じ結果を得ました。
これが私のtests.r
ファイルです:
私はそれを実行test_file
します:
ご覧のとおり、コンソール出力はなく、結果data.frame
には、失敗したテストとエラーのあるテストが 1 つずつ表示される代わりに、すべてが成功したように見えます。
関数本体をコンソールで直接実行すると、期待どおりの結果が得られます。
これは私が実行しているものです:
インストールが壊れているか何かがあるのではないかと疑って、Ubuntu Trusty/R 3.12 と Windows 7/R 3.11 で同じテストを試したところ、同じ結果が得られました。私は本当に愚かなことをしているに違いない!
を使用して類似のテストを作成する場合Runit
:
期待される出力と結果が得られます。
r - テストソフトウェア QuickCheck の R ポートはありますか?
R でのプログラミングに多くの時間を費やしていることに気付いたので、自動テスト (Perl での習慣によって習得した) に戻りたいと思っています。Test::LectroTest
ユーザーフレンドリーであることに加えて、Perlや Haskell のQuickCheckなどのテスト用にランダムな入力を生成できることにも特に関心があります。に似たものはありR
ますか?
r - testthat期待のための期待されるdata.frameを取得しています
関数が期待される data.frame を返すことをテストしたいと思います。data.frame が大きすぎて R ファイルで定義できません (たとえば、 のようなものを使用しますstructure()
)。次のように、ディスクから簡単に取得しようとすると、環境に問題があります。
コンソールで実行すると、行は正しく実行されます。しかし、実行するdevtools::test()
と、ファイルから rds/data.frame を読み取るときに次のエラーが発生します。
これを機能させるには、環境にどのような調整が必要ですか? 簡単な方法がない場合、大きな data.frames をテストする良い方法は何ですか?
r - testthat の負の条件
test_that() または expect_XXX() 呼び出しで否定的な条件を書くことは可能ですか? 具体的には、部分文字列を含まない文字列をテストしたいので、次のようにします。
また
たとえばgrepと組み合わせてexpect_true()を使用できることを認識しています:
しかし、それはあまり読めないようです。