Better Software Testing

ソフトウェアテストをもっと良くしたい

俺の屍を越えてゆけ

speakerdeck.com

わかりみが深くて辛い気持ちになった。

自分も似たような経験をしたことがある(闇的な意味で)。

新卒の頃、何も考えず新旧機能とわず自動化しまくっていたら、メンテナンスコストが爆上がりし、失敗原因調査とメンテナンスだけで1日が潰れる時期があった。「自動テストは少しずつ実装・運用しながら増やすのが良いんだな」と学ぶことができるよい機会であった。

枯れた機能のテストを自動化する場合はともかくとして、新しい機能のテストを自動化する際にはタイミングに気をつけたほうがいい。僕だったら、機能がリリースされた直後くらいから実装を始めると思う。新しい機能なので細かい改修は都度入るだろうが、大枠は固まっていると思われるためだ(テスト設計まではリリースより前に済ませておくと、スムーズに実装を開始できると思う)。

あと、テスト自動化の経験が浅い場合は、最初は少人数から始めた方が安全そうだと感じた。経験の浅いエンジニアが大量に一斉にテスト自動化を始めると、実装方法がマズかったりメンテナンスコストを考慮できていなかったりして短期間で破綻してしまうような気がする。少人数の場合は、破綻するにしても手戻りコストは比較的小さくなるので、もうすこし安全というか確実に前進できそう。

それにしても、(自分も全く同じ経験をしているのでとやかくいえないが)テスト自動化系のスライドを見ると、みなさん大体同じような失敗をしているのだなと思う。テスト自動化のSaaSを開発するなら、この点に注目してみるとユーザーに喜ばれるかもしれない。