自動テストがないとデグレが発生しまくる
自動テストは必要です。
コード規模がある程度大きくなってくると、必ずデグレが発生します。
これはもう、避けようがないですね。
ある機能をリリースしたら、別の機能でエラーが発生した。
本番リリースしてユーザーが動かして初めて気づいた。
ユーザーにテストさせてるようなもんですね。
過去のプロジェクトでも、今のプロジェクトでも、
こんなことが本当に多いです。
これを防ぐには、適切な自動テストが組まれていることが一番だと、最近は思います。
サービスが育って、コード規模がある程度大きくなってくると、
人力でやってる以上、必ずデグレが発生してしまうからです。
なので、自動テストって大事なんだなって思った次第です。
自動テストがないとリファクタリングできない
自動テストがないと、コードを修正できません。
修正だけならできるかもしれませんが、その修正の妥当性を検証できません。
メンバーが増えて、機能追加やバグ修正が重なってくると、
必ずコード品質が下がってきます。
初期メンバーが保っていた一貫性がなくなってきます。
そうすると、リファクタリング(コード修正)すれば良いのですが、
自動テストがないと、誰も手出しできなくなってしまうんです。
だから、最初っから自動テストは書いておく必要があります。
参考
テストの基本がわかりやすい。
https://gihyo.jp/dev/serial/01/tech_station