3

実際のクラスの前に単体テストを書く習慣をつけようとしています。スタック オーバーフロー コミュニティが提供してくれるヒントと、役立つリソースを教えてください。

ありがとうございました

4

4 に答える 4

2

最初にテストを書くことの背後にある考え方は、コードを書く前にコードが何をするかを知っているということです。そのため、何をしたいのか、各機能をどのように使用したいかのリストを作成します。次に、各機能のテストを作成します (オブジェクトの機能をテストするのに必要な複数のテストを自由に記述してください)。

これで、クラスのフレームワークができました。最初の目標は、クラスで使用されるすべてのメソッドを追加してテストをコンパイルすることです。次に、メソッドを正しく実装してテストに合格します。

Boom - テスト駆動開発はあなたの履歴書に掲載されます! :-)

于 2010-05-20T20:29:07.143 に答える
1

ここから始めるのがよいでしょう。これには、TDD に関する非常に優れた入門書が含まれており、追加リソースへのリンクの包括的なリストが含まれています。

http://www.agiledata.org/essays/tdd.html

于 2010-05-20T20:28:16.350 に答える
0

私は1つのポインタしか持っていません:

メソッドをどのようにコーディングするかではなく、メソッドが何をすべきか、どのように動作するかを考えてください。

これにより、コードを記述せずに (さらに言えば、計画を立てずに) 単体テストを計画することができます。

于 2010-05-20T20:28:59.077 に答える
0

私は通常、クラスまたはスクリプトの PHPDocs の一部として一連のビジネス ルールを作成することにより、(PHPUnit を使用して) TDD を実行します。私はコードを書きません。ビジネス ルールだけを書きます (たとえば、Foo は次の場合に例外をスローします)。それが整ったら、各ビジネス ルールに対応するテスト ケースの作成を開始します。最初にビジネス ルールを作成すると、いくつかの境界を確立するのに役立ち、テスト ケースによって実際のコードが形作られることがわかりました。

于 2010-05-22T02:19:37.060 に答える