4

アプリケーションの開発に TDD/BDD メソッドを使用する場合、どの程度の粒度を取得する必要がありますか? 特にRailsアプリケーションに関して。

すべての単一フィールドを個別にテストしてから、合格する移行を修正しますか? それでは、すべてのフィールドに独自の移行がありますか? フィールドが彼らのものであることを確認するために、実際に何をテストしますか?

私は本当に、どこから始めて、どのくらい細かく取得するかについて頭を悩ませようとしています. 私はすべての小さなことをテストする方法がわからないので、始めてフリーズします。

私が見た例のほとんどは、検証を例として使用しています。その前にもっと多くのコードが書かれていることは知っていますが、「名フィールドが必要」などの最も基本的なことをテストする方法がわかりません。

どんな助けでも大歓迎です。

ありがとう!

4

2 に答える 2

1

Cucumberなどの TDD/BDD 用のツールを使用していますか?

Rails での Cucumber の使用に関する良い情報があります。

基本的に、機能を作成してから、その機能がテストに合格するための足場を作成します。モデルに別のフィールドを追加する場合は、最初に機能を更新し、失敗させてから、移行を記述し、ビューを更新してテストに合格します。

于 2009-11-02T13:45:01.490 に答える
1

私はそこまでドリルダウンしません。実際、私は通常、移行をテストしません。(一般的に) getter と setter をテストするのに時間をかける価値はありません。システムについて教えてくれるテストに固執し、コードの重要な機能要件を表現します。

どこから始めればよいか: テスト方法を知っている要件を選択します。外部の依存関係がなく、パスが完全に明確な要件です。目的の動作を説明するテストを作成して実装し、コードをリファクタリングして、実装中に追加した可能性のある醜さを取り除きます。リストのいくつかの機能に対してこれを行った後、必要な構成要素/依存関係を作成したため、あいまいな機能のいくつかに焦点が当てられていることに気付くでしょう。

AWDRThe Rails Wayよりもテスト プラクティスについて詳しく説明している優れた本はRSpec Bookで、そのベータ版は電子形式で入手できます。

于 2009-11-02T15:40:56.740 に答える