AIを導入したQAのロールとスキルマップ
こんにちは!
e-dashでQAエンジニアをしている10mo8です。
弊社のQAグループではAIをテスト活動に導入することを検討しているので、そこで検討された内容を記載したいと思います。
QAグループは絶賛積極採用中ではありますが、現状は少人数で活動しており、少人数ではありながらも、E2Eテストの自動化に取り組んだりしながら、新しい技術や手法にチャレンジしています。
個人の専門性を重視しながらも、生産性高く、質の高いアウトプットが出せるように、テストエンジニア(TE) と 自動化エンジニア(SET) の役割をあまり区別せず、品質向上に必要なスキルやアプローチを全員が使いこなせる状態を目指しています。
これにより、チーム全体の柔軟性が高まり、より効率的な品質保証が可能になると考えています。
このような状態にするため、QAロールの在り方を見直す中で「テストエンジニア(TE)と自動化エンジニア(SET)って分ける必要あるの?」という問いに向き合ってきました。
特に、チームが少人数の状態や、AIの導入が進んできた今、QAに求められるスキルや体制はどんどん変化していると感じています。この変化は、従来の役割分担の見直しだけでなく、新しいテスト手法や品質保証アプローチの採用を検討するタイミングにあると考えています。
そこで本記事では、
- なぜTEとSETを厳密に分けなくてもよくなってきたのか
- AIを活用するために必要なスキルとは何か
- チーム育成に使える「QAスキルマップ」
についてまとめたいと思います。
そもそもTE・SETを分けるべきなのか?
以前はこう思っていましたが、
TEとSETは役割もスキルも違うから、ちゃんと分けて育成・配置しないと回らない
今はこう思うようになってきました
テストプロセスとロール定義がしっかりしていれば、厳密に分けなくてもよいのでは?
特にAIの力を借りれば、1人のQAが多様なスキルをカバーできる時代になってきている。
AIによって変わった「QAに求められるスキル」
人間とAIの役割分担
以前は「手動テスト」と「自動化」は分業構造でしたが、今は、AIが自然言語ベースのテストから自動化コードへの落とし込みまでサポートしてくれるようになりました。その結果、TEのテスト設計スキルとSETのテストコーディングスキルの境界をAIが埋めてくれるようになり、TEとSETという役割分担が緩やかに統合されていくように思います。
とは言え、まだまだ人間の判断が必要な場面は多くあります。QAグループでは以下のように整理しました。
領域 | AIで代替できる? | 補足 |
---|---|---|
テスト戦略 | × | ビジネス判断・優先順位付は人間(QA)が行う |
テスト設計実装と実行 | △ | テスト観点の抽出やテスト実行は人間(TE)が行う |
自動テストの実装 | ○ | 単純なものはAIで、複雑なものは人間(SET)が行う |
QAグループ全体のアップデート(組織文化やスキルアップなど) | × | 組織間の調整やQA文化の醸成などは人間(QAグループ)が行う |
ここから、AIに代替可能だと思われる自動テストの実装について、掘り下げていきたいと思います。
AIに代替可能な領域:自動テストの実装
現在、導入の検討を進めているのがPlaywright MCPになります。
Playwright MCPのような自動ブラウザテストツールを活用することで、より効率的なテスト自動化が可能になってきています。
Playwright MCPの詳細な説明は割愛しますが、Playwright MCPではWebページの構造を理解したテストコード生成が可能になることで、安定的なテスト実行が可能です。
自然言語からテストコードを生成できるので、SET的な作業はAIがカバーしてくれる部分も増えてくるので、非SETエンジニアでも十分に対応できると考えています。
むしろ、テストの目的をより理解しているエンジニアが質の良いテストコード生成プロンプト書く = 質の良いテストコードを作れる TE・SETになるかもしれません。
従って、今後は、テストコード生成プロンプトを書くスキルを身につけることが、コーディングスキルより重要になると考えています。
現時点での考察
- 「誰がやるか」より「どうやるか」の仕組み化のほうが重要になる
- 明確なテストプロセスがあれば、TEとSETを厳密に分ける必要はないかも
- レビュープロセス、レビューするスキルは、これからも重要になるはず
- AI活用しながら、1人のQAエンジニアが一気通貫でテストプロセスを担当できるれば、よりスケーラブルかつアジャイルになれる
AIを導入したQAグループのスキルマップとは
Playwright MCPなどの活用により、手動テストと自動テストのプロセスが統合されることで、TEとSETの責任分界点が曖昧になるかもしれません。
しかし、それぞれの専門性がなくなるわけではなく、むしろこれからは、お互いの専門スキルを学び、高め合っていく必要があると考えています。
そこでQAグループでは、TEとSETそれぞれの専門性と、今後必要となるスキルを体系的に整理することにしました。
スキルマップでチーム力を可視化する
これからのTE/SETのスキルを再定義するために、TEとSETをマージしたスキルマップを作成しました。
以下が、カテゴリごとにまとめたスキルマップの一部になります。
カテゴリ | スキル区分 | 初級 | 中級 | 上級 | スキルトランスファー |
---|---|---|---|---|---|
テスト要求分析 | TE | 要求仕様書からテスト項目を抽出できる | テスト観点を網羅的に洗い出せる | テスト戦略を立案できる | テスト戦略の策定(TE→SET) |
テスト設計実装 | TE | テストコード生成プロンプトの実装ができる | 実装されたテストコード生成プロンプトのレビューができる | テストコード生成プロンプトの改善ができる | テスト設計技法(TE→SET)・レビュー知見の共有(TE→SET) |
自動テストコード作成 | SET | AIが生成したコードを読める・実行できる | AIが生成したコードを修正できる | AIを使用しないでコードが作成できる | テストコードのリーディングとライティング(SET→TE) |
手動テスト実行 | TE | テスト仕様書に基づいて実行できる | チャーターに基づいて探索的テストを実行できる | リスクベースで探索範囲を設計・最適化できる | テスト実行ノウハウとバグ検出手法の共有(TE→SET) |
分析・レポート | TE/SET | 結果をまとめられる | バグ傾向を分析できる | 品質傾向を定量・定性で報告でき、改善の提案・実施ができる | 相互レビューとベストプラクティス共有(TE⇔SET) |
スキルアップ施策
スキルマップで記載したカテゴリに対し、QAグループでは以下のようなスキルアップ施策を充実させていく予定にしています。
施策名 | 内容 | 目的 | 対象スキル |
---|---|---|---|
テスト要求分析 | テスト項目の抽出方法と観点の洗い出しについて | テスト分析・設計の基礎力向上 | テスト要求分析(初級・中級) |
リスクベーステスト設計 | リスクベースでのテスト戦略立案とレビュー | 戦略的なテスト設計力の向上 | テスト要求分析(上級) |
テストプロンプト設計 | より良いテストコードを出すプロンプト設計と改善 | AIを使いこなすプロンプトスキルの向上 | テスト設計実装(全レベル) |
AI生成コードレビュー実践 | 生成されたテストコードの品質評価とレビュー | AIコードレビューのベストプラクティス習得 | 自動テストコード作成(初級・中級) |
探索的テスト実践 | チャーターベースの探索的テスト手法と実践 | 効果的な手動テストスキルの向上 | 手動テスト実行(中級・上級) |
テスト分析・レポート作成 | バグ傾向分析と品質レポート作成の実践 | 分析・報告スキルの向上 | 分析・レポート(全レベル) |
MCP実践 | MCPを使った効率的なテスト作成と活用事例の共有 | AIツールの実践的な活用方法の習得 | テスト設計実装・自動テストコード作成 |
これらのスキルアップ施策を、新メンバーのオンボーディングプログラムにも積極的に取り入れ、QAグループ全体のスキル向上を目指していきます。
最後まで読んでくれてありがとうございました!
Discussion