※前提として、Webサービスに限った話です。
なんでシステム間テストとか、結合テストを後続フェーズ(プロジェクト終盤)でやろうとするのか理解に苦しむ。
別にウォーターフォール批判とかじゃなくてよ?
単純にさ、環境依存とかシステム連携のバグとかの方が、いわゆる機能バグより心底恐ろしいわけ、僕は。
だってさ、原因もよく分からないことが多いし、対応コストも往々にして高いし、最悪取り返しつかなくない?
みんなはそうじゃないの?
しかも大体そこでテストするのってさ、機能の網羅テストとかじゃないと思うのよ。
データフローとか、システム連携のテストでしょ。
要件というよりも設計、アーキテクチャのテストじゃん。
待ってる必要ないじゃん。
外部設計が終わったらテストすりゃいいじゃん。
細かいI/Fとか後でいいじゃん。
細かい要件とか後でいいじゃん。
あえて後ろにする意味もないんじゃないの?
まず設計の妥当性を確認しようよ。
一生懸命考えて十分に検討したって、動くまで信用しないの、僕は。
んで、どんどんリリースは近づいてくる、対応時間がなくなっていく、リスクは増えていくのに、後回しにする感覚が僕には分からないの。
どんな制約があるにしてもよ。
制約を取り除く努力をした方が効果高いと思うわけ。
CIってさ、自動化とかはHowの話でさ、Whyはそういうことだと思ってる。
補足
性能テストもおんなじ部類だと思ってる。
ただ、要件への依存度が結構高い。
でも基本的には可能な限り早く着手すべきとは思ってる。