⛑️

内製チームのためのテストエンジニア任命制度について

2024/03/29に公開

概要

プロダクトの品質向上のために、テストエンジニアをチーム内で育てる活動についてのご紹介です。
半年ほど運用していて、良い感じなので共有します。

対象読者

主に社内向けツールを開発していて、外部のQAが使えないチームの方

ルール

  • リリース前の一週間を、ST(総合テスト)およびUAT(ユーザ受け入れテスト)の期間とします。
  • テストは基本的にスタンバイ環境(本番と同じデータ、同じスペックの環境)にデプロイされたアプリを利用し、リリース後の本番と同じ状況でテストします。
  • UATは開発に関与したメンバー以外からテストエンジニアを任命し実施します。STは開発に関与したメンバーが行ってもいいです。
  • テストエンジニアはチケットを確認し、受入れ条件の設定と、それを満たすテスト項目および実施結果をまとめます。テストに必要な情報は適宜、開発を担当したメンバーからヒアリングします。

禁止事項

  • 開発したメンバーがテスト内容について口出しするのは禁止です。テストエンジニアがユーザーの立場に立って、この条件なら受け入れられるという条件を設定します。

テストエンジニアについて

任命方法

  • 自薦を基本としますが、特定の人に偏る、または特定の組み合わせに偏っている場合はチーム内で調整しています。

権限

  • 開発メンバーに対して、テストに必要な情報の提供を求めることが出来ます。
  • 開発メンバーに対して、テストに必要な作業を依頼することが出来ます。

責任

  • 特に追求はされませんが、テストを担当したタスクにバグがあった場合は、開発者と責任を折半するくらいの気持ちでテストしてください。

効果

  • リリースされるタスクについて、詳細を知っている人が2人以上になり、開発した人しか詳細を知らないという状況を回避できます。
  • 開発メンバー以外の視点が入ることで、抜け漏れを軽減できます。
  • 基本的に人間は自分には甘くなる傾向があるので、セルフテストよりは信頼できる結果が得られます。
  • 開発時からテストを意識したチームになります。

Discussion