9

私は機能テストから何を除外すべきかを理解するのに苦労しています(私の場合、Railsを使用していますが、フレームワークはおそらく無関係だと思います)。

フィールドに文字が多すぎないことや、フィールドを空にできないことなど、単体テストで検出される機能テストをわざわざ使用するべきではないという印象を受けています。この場合、どのような不測の事態を機能テストで確実にテストする必要がありますか、および/または他の人を単体テストのみに任せるための経験則は何ですか?

それとも、この印象はそもそも間違っていますか?

私は これこれを見てきました が、私はまだ途方に暮れています。

4

2 に答える 2

7

機能テスト:マーケティング/ユーザビリティ/顧客が承認したことを実行しますか? つまり、ZIP テキスト ボックスが有効な米国の郵便番号のみを許可することが仕様に明記されている場合は、おそらく機能テストでそれをテストする必要があります。

単体テスト:開発者が期待するとおりに動作するか? これらのテストでは、テスト ダブルを使用してコードを依存関係から分離する必要があります。

そうです、ある種の重複があります。

于 2009-05-29T20:15:26.510 に答える
4

私は、機能テストで機能を「スパイク」し、すべてをカバーすることを心配せず、代わりに単体テストに焦点を合わせます。

理由:

  • 機能テストは遅い
  • 機能テストの作成と保守は困難です
  • 機能テストでは、単体テスト以外に2つの追加アイテムしかキャッチできません。
    • GUIのバグ
    • クロスレイヤーの不一致

全体として、すべてを2回カバーしても効果がないことがわかりました。

于 2009-05-29T20:28:21.027 に答える