5

私は最近、Rspec + Capybaraを学びました(私は物事をテストするのは初めてです)。そして、私は自分が作成したいくつかの新しいモデルをテストしてきました。今、モデルにtitle列を追加することを考えていました。Postそれは難しい仕事ではありません、そして私は以前に何度もそれをしました。しかし、スペックファイル(投稿、投稿ページ、ユーザー、ユーザーページ、ファクトリ、sample_dataなど)の更新には多少の作業が必要になることに気付きました。

この場合のテストは時間の無駄ですか?それとも、すべてを完全にテストすることをお勧めしますか?

また、宝石のテストも時間の無駄なのだろうか?それらはおそらく作成者によってすでにテストされているので(信頼できるチュートリアルから取得したものをテストする場合も同じです)。

4

2 に答える 2

4

ルビーコミュニティはテストに重点を置いていることで知られていますが、最も費用効果の高い決定が何であるかを理解するために、すべてのケースをコンテキストで分析する必要があります。

テストをリスクを管理するための手法と考えると便利です。タイトルの表示/データベースへの追加がエラーを起こしやすく、実行が複雑なタスクであるとは思わない場合、またはこれらのテストを追加するコストが最終的に何かを壊すリスクよりも高いと思われる場合は、それをしないのが賢明です。

とは言うものの、あなたはテストに不慣れだと言っていたので、(もちろん時間に制約がない場合は)絶対にすべてをテストするという極端なアイデアを試してみることをお勧めします。それのどれだけが付加価値をもたらし、どれだけの時間が無駄になります。

Railsの作成者であるDHHからのこのブログ投稿をご覧になると、彼はそれについて語っています。TSAのようなテスト

宝石のテストについては、アプリケーションテストではなく、作成者がテストする必要があることは一般的に広く受け入れられています。ほとんどの場合、彼らは約束どおりに機能していると単純に想定できます。

于 2012-11-10T02:13:21.713 に答える
1

テストの主な概念の1つは、「すべてをテストすることは不可能です」です。

于 2012-11-10T02:21:48.770 に答える