E2Eテストの必要性はわかる。あった方が良い。でも、「一生懸命頑張って環境作った」人がいたのにメンテされず捨てられる、という場面に遭遇した事があるのでE2E
という文字を見ると微妙な気持ちになる。
何故捨てられてしまったのか?
- UIのメンテ頻度が高くテストのメンテナンスが追いつかなかった
- フロントエンドエンジニア(私)がE2Eテストを修正していなかった
- E2EはSeleniumで、Rubyで記述されていた
- 画面の修正に合わせてメンテを依頼する必要がある状態
- フロントの要素探索が難しい、または壊れやすいDOM構成になっていた
フロントエンドのメンテナンスをする人間がテストを自分で修正できないと修正コストがかかる。するとE2Eテストは古くなり、運用が形骸化する。結果、テストは実際のコードを手動で打鍵できれば良いか、となってしまう。
対策としては原因の逆を地道にやるしかないと思う。可能であればフロントエンドエンジニアがきちんとテストをメンテナンスできたほうが良い。