概要
AWSは新機能を公開しました。AIエージェントによるテスト自動化を、組織全体でスムーズに進めるための機能です。
自然言語でテストを定義できる「QA Studio」に機能が加わりました。テストの整理や権限管理の仕組みです。
たくさんのチームが参加する開発現場でも、テストの管理が分かりやすくなります。
何が発表された?
AWS Machine Learning Blogによると、QA Studioの組織展開を支援する機能が追加されました。QA Studioは自然言語テスト自動化リファレンスソリューションです。
今回の発表は組織が直面する課題を解決するためのものです。AIによるテストの自動実行をすでに導入している組織は、管理の複雑化に悩んでいました。
新機能として提供された主な要素は次のとおりです。
- アプリケーション単位でのテストの整理と所有権の明確化
- Amazon CloudWatchを活用した健全性メトリクスの可視化
- Amazon Cognitoを用いたチームベースのユーザー管理と権限設定
- チーム間での安全なアプリケーション共有機能
アプリケーション単位でテストをどう整理する?
QA Studioでは、テスト対象のシステムを「アプリケーション」という単位で表現します。テスト対象はウェブサイトやサービスなどです。
個別のユースケースや回帰テスト用のテストスイートは、このアプリケーションに所属します。そして、その所有権を引き継ぎます。
これにより、デプロイされているすべてのテストが1つの平坦なリストに並ぶ状態を防げます。各チームが自分の担当するアプリケーションの内部で作業できるようになります。
アプリケーションを作成するには情報の入力が必要です。名前、ベースURL、そして開発やステージング、本番といった環境の設定を入力します。
テストの健康状態はどうやって見える化される?
テストを実行すると結果が蓄積されます。単にそのビルドが成功したかどうかだけでなく、時間経過に伴う変化を追うことが重要です。
QA Studioはすべての実行結果を記録します。Amazon CloudWatchのカスタムメトリクスとして記録し、アプリケーションや環境ごとに集計します。
アプリケーションのページの上部には情報が表示されます。選択した期間の成功率、総実行数、現在の失敗数が表示されます。
さらに、QA Studioは健全性スコアを算出します。スコアは0から100までです。
このスコアは成功率をベースにしています。しかし、結果が頻繁に入れ替わる不安定なテストに対するペナルティを差し引いて計算されます。
これによりアプリケーションを見落とさずに把握できます。表面上の成功率が高くても中身が不安定なものを見落としません。
権限管理の仕組みはどうなっている?
メトリクスがチームにアプリの状況を伝えます。一方で、チームベースのユーザー管理はどのアプリケーションが誰のものかを決定します。
QA Studioではアクセス権限はチーム単位で整理されます。1つのアプリケーションは正確に1つのチームに所属します。
すべてのチームメンバーはいずれかのロールを持ちます。上位のロールは下位の権限をすべて含んでいます。
- Admin:すべてのチーム、アプリケーション、ユーザーに対するスタジオ全体のアクセス権限。
- Team Lead:自身のチームメンバーの管理と、チーム向けアプリケーションの作成。
- Editor:チームのアプリケーション内でユースケースやテストスイートの作成・編集。
- Executor:ユースケースやスイートの実行のみを行い、変更はしない。
- Viewer:チームのアプリケーションと結果に対する読み取り専用のアクセス権限。
また、機能も備わっています。所有チームが別のチームに対して権限を共有できる機能です。共有できる権限は表示、実行、またはフルアクセスです。
この共有には天井ルールがあります。共有先ユーザーの権限には適用されるルールがあります。自身のロールと共有されたレベルのうち低い方が適用されます。
どのようなバックエンドサービスで動いている?
QA Studioはサーバーレス基盤をベースに構築されています。これはこれまでの投稿で説明されてきた基盤です。
使用されている主なAWSサービスは次のとおりです。
- Amazon Cognito:各チームをロールごとのグループにマッピングし、リクエストごとにAWS LambdaオーソライザーがAPIスコープやチームコンテキストを解決する。
- Amazon DynamoDB:チーム、メンバーシップ、アプリケーションの所有権、クロスチームの共有設定を既存の単一テーブル設計で保存する。
- Amazon CloudWatch:すべての実行結果をカスタムメトリクスとして出力し、健全性ビューやトレンドチャートを構築する。
- AWS LambdaおよびAmazon API Gateway:呼び出し元のロールに基づくスコープと、チームの所有権や共有状態を確認するリソースチェックの2層でアクセスを強制する。
日本で使える?
はい、日本のユーザーも利用できます。AWS環境を通じて利用可能です。
QA Studioはリファレンスソリューションです。AWS CDKを使って自身のAWSアカウントにデプロイします。
すべてのテストデータや結果、メトリクスはユーザーのアカウントの境界内に保持されます。
導入にあたっては手順があります。公式のGitHubリポジトリおよびドキュメントを参照します。デプロイ後に管理者がチームやロール、アプリケーションの設定を行います。
自分にはどう関係する?
エンジニアなら
CI/CDパイプラインと連携するテストの実行を行えます。さらに、エージェントの軌跡ログを用いた失敗原因の特定を効率的に行えます。
企画・マーケティングなら
直接テストを書かない場合もあります。それでも、アプリケーションごとのテスト網羅状況や健全性スコアを把握できます。これにより品質の安定性を確認できます。
経営者・管理者なら
どのチームがどのアプリケーションを所有しているか分かります。テストの健康状態が全体として維持されているかを組織横断で可視化できます。
まとめ
QA Studioの新機能により、テスト自動化を組織全体へ安全にスケールさせることが可能になります。AIを活用したテスト自動化を少数のテストからスケールさせます。
AWSアカウントにリファレンスソリューションをデプロイしましょう。まずは最初のチームとアプリケーションを作成して動作を試してみましょう。
詳細な手順や設定については、情報源があります。公式のGitHubリポジトリを確認してください。