私はこれがあるとは思いません起動するには、繰り返しの他の質問にユニットテスト。私が助けを求めているのは、プログラマー、アナリスト、マネージャー、テスターのチームにその価値を明確にすることです。自動テストでは、ユニットテスト(JUnitなど)、BDD(JBehave、Fitness)、UI(Selenium、Watir)を区別する必要はないと思います。同意しない答えを書いてください:))
以下は私が特定したリストです。拡張または改善に役立つ答えを探しています:
- 時間/コストの節約:自動化されたテストの作成は、テストケースの作成よりも時間がかかる場合があります。ただし、テストが複数回実行されることを考慮すると、自動テストを実行するためのわずかな作業(コスト/時間)が数桁少なくなります。自動テストの実行が安価であることは、時間の経過に伴うシステムの変更を促進します。
- ドキュメンテーション:システムがどのように機能するかを知るためのより正確な方法は、テストよりもありません。他のドキュメントは、通常、作成された時点では古くなっていますが、テスト(少なくとも合格したもの)により、実際の動作が明らかになります。これは、エンドユーザーおよびAPIドキュメントの両方に当てはまります。
- コード品質:テスト作成により、次のことが強制されます。
- テストはクライアントであるため、クライアントを考慮する
- コードをテスト可能にすることは、多くの場合、他の大規模システムを必要としないコードを作成する方法を見つけ出すことを意味します。