Slide 1

Slide 1 text

Strands Agents で実現する総合テスト自動化 手動からの 解放 !!

Slide 2

Slide 2 text

自己紹介 3 ある日のお仕事 4 やってみた 8 今後の展望 17

Slide 3

Slide 3 text

 c o n n p a s s https://tech.nri-net.com/archive/author/r-ide-ryota 井手 亮太 Activity BORN IN AGE JOB HOBBY 大阪府吹田市 基盤構築・運用 25歳 社会人 2年目 海外サッカー観戦(リバプール・ブライトン) いで りょうた  執 筆 ブ ロ グ https://nrinetcom.connpass.com/ https://nrinetcom.connpass.com/

Slide 4

Slide 4 text

 c o n n p a s s https://tech.nri-net.com/archive/author/r-ide-ryota 井手 亮太 Activity BORN IN AGE JOB HOBBY 大阪府吹田市 基盤構築・運用 25歳 社会人 2年目 海外サッカー観戦(リバプール・ブライトン) いで りょうた  執 筆 ブ ロ グ https://nrinetcom.connpass.com/ https://nrinetcom.connpass.com/ 8/19(火) 19:00~20:00 勉強会開催します!

Slide 5

Slide 5 text

実践 02

Slide 6

Slide 6 text

総合テスト 調査 エビデンス取得 定期実行されてる? エラーを吐いてない? 正常なログ吐いてる? システムログ 画面キャプチャ システムが仕様通りの動作をしているか確認するテストのこと

Slide 7

Slide 7 text

AWS上のシステムにおけるテスト手法 テストケースを確認 コンソールを開く エビデンス用の スクリーンショットを撮る 手動 テストケースを確認 シェルスクリプトを実装 実行したコマンドと その結果を エビデンスとする AWS CLI とにかく時間がかかる 人的ミスが発生しやすい シェルの知識が必要 汎用的な活用が難しい

Slide 8

Slide 8 text

そんな時に出会ったのが。。。 MCP Server にも対応 数多くの組み込みツール が用意されていること Strands Agents テスト自動化 実現できるん じゃない?

Slide 9

Slide 9 text

やってみた 02

Slide 10

Slide 10 text

テスト対象システム AWS Cloud Amazon EventBridge AWS Lambda Amazon Bedrock AWS最新ニュース通知アプリ 定期実行 Slackに通知 翻訳 ニュース取得

Slide 11

Slide 11 text

テストケース 0 1 EventBridge 実行状況 ✓ 定期実行されているか Lambda メトリクス ✓ Invocations が1以上 ✓ Errorsが0 Lambda ログ ✓ 正常なログが出力されているか ✓ エラーログを吐いていないか Slack 通知 ✓ ニュースが通知されているか 0 2 0 3 0 4

Slide 12

Slide 12 text

テストケース 0 1 EventBridge 実行状況 ✓ 定期実行されているか Lambda メトリクス ✓ Invocations が1以上 ✓ Errorsが0 Lambda ログ ✓ 正常なログが出力されているか ✓ エラーログを吐いていないか Slack 通知 ✓ ニュースが通知されているか 0 2 0 3 0 4

Slide 13

Slide 13 text

テストケース テスト手法、及びテストに必要な パラメータの情報を記載 テストの期待される結果 テストの期待される結果が 得られた場合⇒ OK そうでない場合 ⇒ NG をAIが記載する

Slide 14

Slide 14 text

Strands Agents テストケース ① テストケースの読み取り(file_read) ① テストの流れ (EventBridge 実行状況) SDK で作成 ※ 赤字はStrands Agents に デフォルトで組み込まれているツール

Slide 15

Slide 15 text

Strands Agents ③ テストケース ② AWS Cloud ① テストケースの読み取り(file_read) ② AWS CLIの実行 (Shell) ③ Lambda MCP Server 経由で メトリクスグラフ保存Lambda を実行 Amazon CloudWatch AWS Lambda Amazon S3 ① テストの流れ (EventBridge 実行状況)

Slide 16

Slide 16 text

Strands Agents ③ テストケース ② AWS Cloud ① テストケースの読み取り(file_read) ② AWS CLIの実行 (Shell) ③ Lambda MCP Server 経由で メトリクスグラフ保存Lambda を実行 ④ S3 に保存したメトリクスグラフを CLI でダウンロード(Shell) Amazon CloudWatch AWS Lambda Amazon S3 ① エビデンスフォルダ ④ テストの流れ (EventBridge 実行状況)

Slide 17

Slide 17 text

Strands Agents ③ テストケース ② AWS Cloud ⑤ 実行したコマンドとその結果をエビデンスとして ファイルにまとめる(file_write) ⑥ テスト結果と期待値を照合し、結果列を更新(editor) Amazon CloudWatch AWS Lambda Amazon S3 ① エビデンスフォルダ ④ エビデンスフォルダ ⑤ ⑥ テストの流れ (EventBridge 実行状況)

Slide 18

Slide 18 text

Strands Agents ② テストケース ② ※ 認証情報を基にチャンネルにアクセスして、 メッセージ内容を確認(slack) ④ テスト結果と期待値を照合し、結果列を更新(editor) ① エビデンスフォルダ ③ ④ ニュースが通知されたスレッド ※ 認 証 情 報 S l a c k a p i で ト ー ク ン 発 行 ⇒ 環 境 変 数 S L A C K _ B O T _ T O K E N と S L A C K _ A P P _ T O K E N を 設 定 す る ③ エビデンスとして スレッドURLを保存(file_write) テストの流れ (Slack 通知確認)

Slide 19

Slide 19 text

こんなこともできる テストケースが多く、1つのエージェントじゃ大変 Strands Agents はマルチエージェントにも対応 コーディネーター AWS CLI エージェント メトリクスグラフ取得エージェント Slack エージェント ユーザー テストケース1はAWS CLI テストケース2はSlack エージェント

Slide 20

Slide 20 text

具体的な実装方法 コーディネーター Lambda MCP Server エージェント @tool を用いることで独自ツールを作成 エージェントもツールとして扱える コーディネーターエージェントにツールを登録する

Slide 21

Slide 21 text

実践 02

Slide 22

Slide 22 text

今後の展望 セキュリティ面での考慮 ⚫ 適切な権限の設定 ⚫ データの保護 今後、本格利用していくためには。。。 ツールを育てる ⚫ トライ&エラーを繰り返して継続的な改善 ⚫ プロンプトの微調整、コンテキストの最適化 テストツール自体の評価 ⚫ AIエージェントの評価方法を学ぶ&明確に ⚫ 人間によるレビューが必須のため 技術的な知識は必要

Slide 23

Slide 23 text

「テストは話しかけるだけ」を「個人」で実現していこう!! Strands Agentsによるテスト自動化 ⚫ 組み込みツールを用いたファイル・シェル操作 ⚫ MCP Server を用いた AWS 環境との連携 ⚫ 本格的な利用には、セキュリティ面の考慮やツールの評価 方法を確立する必要性がある

Slide 24

Slide 24 text

THANKYOU