QA未経験者が入社3年でやったこと、今後やりたいこと
※本記事は、各担当記事を広報チームが代行して公開しています。
この記事はSkillnote Advent Calendar 2024の10日目の記事です。
2021年8月よりSkillnoteでQAエンジニアをしております田辺です。
私はQAエンジニア未経験の状態で入社したのですが、試行錯誤しながら3年で実施したQA施策についてご紹介したいと思います。
1.開発メンバーによるテスト体制の確立
私の入社前はカスタマーサクセスのメンバーがテスト工程を実施していたため、QAがテスト設計・実施する体制を整えました。テストケースレビューも取り入れ、テスト範囲や観点の漏れが少なくなるような進め方を心掛けました。現在は開発メンバーも増えてQAだけでは手が足りなくなったため、開発メンバーもテスト工程を担当する体制に移行しています。事前にテスト設計・実施のルールを整えられていたため、思ったよりもスムーズに移行できたのではと考えています。
2.受け入れテスト駆動開発(ATDD)の導入
SkillnoteではQAも実装レビューを行うことで変更範囲を正しく把握できるようにしているのですが、結果として実装に寄り過ぎたテストになってしまい、その振る舞いがお客様に求められているものなのかという観点が抜け落ちてしまうことがありました。
そこで、要件定義時に受け入れテストケースを作成し、テスト工程でその振る舞いが適切なものかを併せて確認するようにしました。これにより、出来てみたら想定と違った、という声が上がりづらくなったのでは、と思います。
3.リグレッションテストの導入
手動によるリグレッションテストは実施されていましたが、ケースは明文化されておらず属人化していました。テストセットを作成することで、毎回安定したリグレッションテストの実施が可能になりました。
また、機能追加に伴いリグレッションテストケースが増加し、テスト負担が大きくなったため、一部ケースは自動実行できるようにしました。元々はSelenide(Selenium WebDriverを内蔵した自動テストフレームワーク)にてテストコードを実装していたのですが、メンテナンスコストが高すぎて機能追加についていけなかったため、現在はMagicPodに移行しています。リグレッションの日次実行が可能となったため、デグレにより早く気付くことが出来る体制が整いつつあります。
4.出荷判定会議の導入
メンバー増加に伴いリリース毎に提供できる機能が増えたため、リリース対象の変更や残課題、注意事項を関係者に適切に共有できないということが増えてきました。そこで、出荷判定会議を導入し、関係者が一堂に集まって認識合わせできる場を作りました。リリースに際し誰が何をすべきか、を決める場をつくることで、作業漏れによるサービス品質の低下を防いでいます。
今後やりたいこと
今までやってきたことを記載してきましたが、まだまだ課題はたくさんあります。直近は下記の課題にチャレンジしていきたいと考えています。
・開発が完全に完了してからテスト工程に入っているため、より細かい単位でテスト環境へのリリースを実施し、早期に不具合発見できるようにしたい。
・単体テストによるカバレッジが計測できていないため、現在のテストケースの不足カ所が判断できない。
引き続きSkillnote Advent Calendar2024をお楽しみください!