コンテンツにスキップ

インタラクティブ探索

エージェントに QA プランの作成を依頼すると、ページ構造の把握、信頼性の高いセレクターの発見、アプリケーションの挙動の理解が必要になることがあります。エージェントはこれを探索セッションを使って自律的に行います — ブラウザを開き、アプリケーション内を1アクションずつ操作し、結果を確認してから次に進みます。

エージェントはプラン作成前にアプリケーションの調査が必要だと判断すると、自動的に探索セッションを開始します。セッション内では、エージェントが1つずつアクションを実行し、各アクションの後に即座にフィードバック(DOM HTML、スクリーンショット、URL)を受け取ります。これにより、セレクターの特定、ナビゲーションフローの検証、予期しない UI 状態への対応が、手動の介入なしに行えます。

探索と run_scenario の違い:

探索run_scenario
ブラウザのライフタイムアクション間で維持実行ごとに作成・破棄
フィードバック個々のアクションごとシナリオ全体の完了後
結果の記録なし(ローカルログのみ)なし
ユースケースプラン作成前の調査完成したシナリオのテスト

エージェントは start_exploration を呼び出してセッションを作成します。ブラウザは最初のブラウザアクションまで起動されないため、セッションの作成は即座に完了します。

パラメータ説明
env_name.aqua/environments/<name>.json から読み込む環境名。
environment変数のオーバーライド(最高優先度)。
qa_plan_idデフォルト変数を取得する QA プラン ID。
viewportビューポートプリセット:pc(1280×720、デフォルト)または mobile(375×667)。

セッションは 15分間 操作がないと自動的に期限切れになります。タイマーはアクションごとにリセットされます。

エージェントは explore_action を呼び出してセッション内でアクションを実行します。1回の呼び出しにつき、以下のアクションタイプのうち正確に1つを指定します。

  • browser_step — 単一のブラウザアクション(遷移、クリック、入力など)を実行し、結果のページ DOM、スクリーンショット、URL、タイトルを受け取ります。
  • browser_steps — 複数のブラウザアクションを連続して実行します。最終的なページ状態のみが返されます。既知のシーケンスを素早くリプレイする場合に便利です。
  • http_request — HTTP リクエストを送信し、ステータスコード、ヘッダー、ボディ、所要時間を受け取ります。
  • browser_assertion — 現在のページ状態を変更せずにアサーションを評価します。

エージェントは HTTP レスポンスから JSONPath を使って値を抽出し、セッション変数として後続のアクションで使用することもできます。

各アクションの後、エージェントはフィードバックを分析して次のアクションを決定します — たとえば、ボタンに使うセレクターの特定や、ナビゲーションの成功確認などを行ってから次に進みます。

十分な情報が集まったら、エージェントは end_exploration を呼び出してリソース(ブラウザプロセス、メモリ)をクリーンアップします。エージェントが終了を忘れた場合やセッションが中断された場合でも、15分間操作がなければ自動的に期限切れになります。

エージェントに QA プランの作成を依頼すると、エージェントは必要な情報を集めるために自律的にアプリケーションを探索します。

プロンプト:

local 環境に対して、ログインフローとプロフィール編集ページの QA プランを作成して。

エージェントが裏側で行うこと:

  1. local 環境に対して探索セッションを開始する。
  2. ログインページに遷移し、DOM を調べてメールアドレスとパスワードの入力セレクターを特定する。
  3. テスト用の認証情報を入力してログインボタンをクリックする。
  4. 結果のページを確認し、ログインが成功したことを確認する(URL の確認、ダッシュボード要素の検出)。
  5. プロフィール設定ページに遷移し、利用可能なフォームフィールドを調査する。
  6. 探索セッションを終了する。
  7. 発見したセレクター、URL、検証済みのアクションシーケンスを使って QA プランを作成する。

各ステップでエージェントはスクリーンショットとページの DOM を受け取るため、適切な要素を特定し、予期しない状況(モーダルダイアログの表示、セレクターの不一致など)にも対応できます。

探索セッションはローカルにログが記録されるため、エージェントが過去の発見を参照できます。

  • list_exploration_logs — タイムスタンプ、アクション数、最後にアクセスした URL を含む最近のセッション一覧を取得します。
  • get_exploration_log — 特定のセッションの完全なアクションログを取得します。成功したブラウザステップは JSON 配列としてフォーマットされ、QA プランの browser_steps にそのまま使用できます。

ログは ~/.aqua/explorations/ に保存され、24時間後に自動的にクリーンアップされます(プロジェクトごとに最大30セッションが保持されます)。