とくに誰かに宛ててではなく、自分で仕事していて感じたことです。
日課的なE2E自動テストのメンテナンス
皆がそうかはわからないですが、QAエンジニアやテストエンジニアとしてE2E自動テストを運用している場合、日々のルーティンの中に自動テストのメンテが組み込まれていることがあります。たとえば、毎朝9時に仕事を開始して、出勤の打刻をし、メールやSlackのチェックをしたあと、前夜の自動テストの実行結果を確認する。といった流れです。
私はわりとコレに近く、普段はメールで送られてきている前夜の実行結果を見て「はいはいPassね」といって終わるのですが、たまにFailしているテストがあったりすると、そこからは調査タイムです。
E2Eテストがコケてる原因を調べ、自動テスト側の問題であれば修正しますし、サイト側のようであれば関連する開発チームに一方入れつつ自分でも引き続き調査を行います。
(このあたり「似たような流れでやってるわー」という人は教えてほしいです。)
ちょうど今日も時間は短いながらもこんな感じでFailに気づく→調査→修正対応、を朝からやっていました。
メンテナンスの仕事は「仕事した感」がある
そこでふと思ったのが、「今日は朝から仕事したわ~」という実感です。Passしているのが正常である自動テストがFailしているという問題があって、それを解決した、という点では確かに仕事をしています。
が、これで仕事した感を得続けるのはそれはそれで危険な気がしました。
E2E自動テストのメンテナンスは何かを生んでいるのか
E2E自動テストが整備されていて、サービスやプロダクトに何か問題が起こっていたら短い期間で気づくことができる、というのは良い状態です。またそれをキープするのも大事な仕事ではあります。しかし、E2E自動テストをキープすることが何か価値を生み出しているかというと、それはそれで疑問ですよね。必要なことだけれども、そればっかりになってはいけない。E2E自動テストのメンテに工数をどんどん追加したからといって、ユーザーが幸せになる度合いは大きくないわけです。
そう考えると、E2E自動テストをメンテして「仕事したわー」感を得るのはほどほどにとどめておいて、そのE2Eテストがより安定して動いたり、より少ない手間でメンテをするにはどうしたら良いかを考えるほうに時間を割くべきですね。