結構、同意したブログ記事。
時期的には書かれた頃にすぐに読んで、「そうだよな~」と思っていたもの。ついつい、こちらに書くのが遅くなっちゃった。
念のためだけど、ここでの単体テストって、ISTQB/JSTQBでの”コンポーネントテスト”のこと。
そんなテストは、本来設計がやるべきもの。そこまでテストチームがやるんなら、「設計って何やってるの?」って皆が言いそう。例えば、ソフトウェア技術者になりたい学生とかも、疑問になるだろう。
ペアプログラミングの担当だって、基本は設計者。それとコンポーネントテストとは、ちょっとしか違わない。ソースコードレビューに、テストチームを含めて効率が良いとは思えない。テストして問題あったら直すのが目的と考えれば、コンポーネントテストもペアプログラミングもソースコードレビューも手段としては同類。その中心は設計だろう。
もちろん、”コンポーネントテスト”という用語や手法は知っていた方が良いけど、それをQAなりテストチームがやるべき前提と考える点はおかしい。
そのブログに、「単体テストはQAのためのものではなくなっているのでは」って書いてあるけど、もしQAのためと今まで思っていたら、QAとしてちゃんとコンポーネントテストをするための工数とか、その網羅率とか測っているんだろうか、、、。今まで、そうしてきたんだろうか? (もちろん、結構成熟した組織で設計内のテストというかサポートとしてコンポーネントテストを実施するところがあるのは知ってるけど、それが一般的に所属としてのQAというケースは少ないだろう。)
ちなみに、海外の場合にQAチームが別組織で、そこが結構コンポーネントテストを実施するケースが少なくないのは知ってる。でもその件と、日本の実情なり今まではと違うと言える。