単体テスト導入で得られる「恩恵」の本質とは?:「テスト環境」を見直し、開発生産性・品質向上を実現!【第2回】
ソフトウェアの単体テストを実行することで、安価で高品質な製品を提供できたり、早い時期に製品の品質を確保できるなどの恩恵を受けられる。しかし、開発会社は単体テストの採用になかなか踏み切れないのが現実である。本稿ではこうした現状と、単体テストをスムースに実行する上で考慮すべき点を解説する。
Agitar Software, Inc.
エバンジェリスト
Jeffrey Fredrick(ジェフリー フレドリック)氏
JBuilder開発チームの創立メンバーでもあり、さまざまなJavaツール開発を担当する。現在は、Agitar Software.Inc.社の開発責任者、エバンジェリストとしてさまざまな講演活動を行うとともに、CruiseControlのコミッターとしても活躍している。
なぜ、ソフトウェア開発会社は、単体テストを採用するのに苦労しているのだろうか?
通常、単体テストを採用することは正しい判断だと思われる。開発サイクルの早い段階でコードレベルのバグを修正することは、コストを抑制し、安価で、確実で、高い品質をもたらすことが一般的な常識である。
開発者は統合テストと行ったり、さらに悪い状況では、納品時に検出されたバグを修正したりする代わりに、新しいコードを作るのに多くの時間を費やすことができる。
ソフトウェアから既に多くの機能バグが取り除かれているので、QAチームはユーザビリティ、スケーラビリティ、パフォーマンス上の努力に多くの時間を費やせる。
開発サイクルの早い段階で品質が確保された状態にあるので、開発マネージャはシステム構築期間がリリース日を越えるという不安が少なくなる。
最終的にソフトウェア開発会社は、コードの品質が確保されているため、早いビジネスの変化に機敏に反応できるようになる。
こうした、専門家によって論理的かつ広く証明されているすべての利益を考慮すれば、単体テストは非常に有益なものであるのは自明である。では、なぜスムースにソフトウェア開発会社に採用されないのだろうか?
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
Copyright © ITmedia, Inc. All Rights Reserved.