直接編集を使用すると、アプリケーションを開かずにmablテストを更新するために必要なツールを、AIコーディングエージェントに提供できます。この記事では、直接編集が適しているケースと、その使い方について説明します。
始める前に
セットアップするには、Claude Code、Cursor、GitHub CopilotなどのAIコーディングエージェントにmablスキルをインストールします。mablスキルは、AIクライアントをmabl MCPに接続し、テストの計画、作成、カバレッジ設計、直接編集、デバッグのための一連のツールを追加します。
直接編集を使用するタイミング
直接編集は、ブラウザテスト、モバイルテスト、APIテストでサポートされています。どちらを使用するかは、テストの種類よりも変更の内容によって決まります。直接編集は、コーディングエージェントが正確に特定できる変更に適しています。一方、mablエージェントは、テスト対象のアプリケーションを操作する必要がある、より複雑で意図ベースのタスクに適しています。
正確に特定できる変更
直接編集は、次のような変更に適しています。
- アサーションの値や期待されるテキストを更新する
- Playwright、CSS、XPathのロケーターを使用する検索ステップを追加または更新する
- URL、APIレスポンスのフィールド、コード変更で追加された要素など、既知のソースから変数を抽出する
- ブラウザテストとモバイルテストでステップグループを作成する、またはステップを削除して並べ替える
- ステップを再利用可能なフローに変換し、他のテストで同じ並びを見つけて置き換える
- mablエージェントが別の場所で行った変更を、内容を確認したうえで繰り返す
モバイルテストでは、直接編集は構造的な変更に限られます。画面上でステップが対象とする要素は変更できません。たとえば、セレクターの更新や、要素からの変数の抽出はできません。
実行中のアプリケーションが必要な変更
変更が、アプリケーションの実行や、コードベースに存在しないサードパーティのマークアップに依存する場合は、代わりにmablエージェントを使用してください。
- コーディングエージェントが把握していないアプリケーションに対してテストを作成する
- コードから判断できないセレクターを見つける
- 動的コンテンツ、iframe、WebView、Shadow DOM、IDプロバイダー、タイミングが関わる作業
- 何が変わったのかまだわからない状態でテストを修復する
- アプリケーションの実際の動作を確認することを目的とした探索的な作業
mablエージェントはブラウザテストのみに対応しています。モバイルアプリの実行が必要な変更を行うには、mablトレーナーを使用してください。
2つのエージェントを組み合わせて使用する
mablエージェントはアプリケーションを把握しており、コーディングエージェントはコードを把握しています。多くの変更は、両方を使用することで最も効果的に行えます。実際のアプリケーションに対してmablエージェントで一度変更を行えば、同じ変更が必要な他のすべての箇所には直接編集を使用して適用できます。
直接編集を行う
直接編集を行うと、コーディングエージェントがmablテストの現在のステップを読み取り、変更を書き込みます。変更は記述されたとおりに適用され、mablがテストを読み取って再生できることを確認するために構造が検証されます。テストを実行して失敗したステップを修正するmablエージェントとは異なり、直接編集ではテストを実行せずに変更を保存します。
最良の結果を得るには、コーディングエージェントによる直接編集を、コードの変更と同じように扱ってください。
- ブランチで編集する:変更がデフォルトブランチに反映される前にレビューできるようにします。
- テストを実行する:masterブランチにマージする前に、変更が機能することを検証します。
たとえば、次のように指示します。
「order-update-text という新しいブランチで、チェックアウトのテストの確認アサーションを 'Thanks for your order' を期待するように更新してください。」