0

このアイデアは、すべての工場のアプローチをfactory_girl テストすることから生まれました。モデル、コントローラー、リクエストに対して同じようなことをしてみませんか?

私の知る限り、新しいActiveRecordモデルは無効であるはずです。そうでない場合は、関連する検証を作成していません。TDDアプローチからは、最初にアサーションを処理するため、これは問題にならない可能性があります。ただし、適切なテストが行​​われていない別のプロジェクトを継承している場合は、[非常に]一般的なアサーションを使用して各モデル/ビュー/コントローラーをテストできれば非常に貴重です。

model.new.should be_invalidモデルの場合、良いスタートだと思います。

これについて何か考えはありますか?これは良い/悪い考えですか?

4

1 に答える 1

1

本質的に価値の低いテストの実行に多くの時間を費やすことになるため、この種の広範なテストはお勧めしません。

テストでは、システムの動作/要件を定義する必要があります。すべてのモデルに1つ以上の必要な値があることを主張することは、すべてのモデルで実行されるときに有用なテストではありません。

真の横断的関心事がある場合は、そのロジックをミックスインに抽出し、動作を分離して定義する独自のテストを行う必要があります。次に、各モデルをテストしなくても、それをすべてのモデルに組み合わせることができます。

ほとんどのエンジニアは、機能コードのコストをビジネス/動作の価値と比較検討する必要があることに同意していますが、テストも同様に行う必要があります。これらの種類のテストは本質的に価値が低いですが、実行時、メンテナンス、および誤検知にコストがかかります。

于 2013-01-28T16:39:16.583 に答える