> For the complete documentation index, see [llms.txt](https://help.aximo.autify.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.aximo.autify.com/features-ja/test-case-creation/writing-prompts.md).

# プロンプトの書き方

Aximo では、シナリオに入力した内容をもとに、AI テスターがテストを実行します。このページでは、AI テスターが読み取りやすいシナリオの構造と、避けたい書き方を説明します。

## 基本の構造

よいプロンプトは、**操作の起点・操作ステップ・確認したい結果** の 3 つを含みます。

```
{どこから始めるか}
{何をするか}
{何を確認するか}
```

次の例は、この構造を満たしたプロンプトです。

```
example.com を開く
ログイン画面でメールアドレス test@example.com とパスワード {{PASSWORD}} を入力する
ダッシュボード画面が表示されることを確認する
```

Web セッションでは URL や Web サービス名を起点にします。モバイル セッションでは、アプリ名や開始したい画面を起点にします。

## 書くときのポイント

### 1 行 1 操作で書く

シナリオは改行で操作を分け、1 行に 1 つの操作を書きます。操作の単位を分けると、AI テスターが手順と確認条件を読み取りやすくなります。

```
Google Flights を開く
サンフランシスコから東京への往復フライトを検索する（出発日は今日から 30 日後、4 日間の旅程）
検索結果に NRT と HND に到着するフライトが含まれていることを確認する
```

### 操作の起点を明示する

AI はセッションごとに新しいブラウザまたはデバイス環境から始めます。どの画面・URL から操作を開始するかを明示してください。開始 URL を指定する方法と、シナリオに直接 URL や画面名を書く方法のどちらでも構いません。

モバイル セッションでは、Web サイトへの「アクセス」ではなく、アプリの起動やアプリ内の画面遷移として書きます。

### 確認したい結果を具体的に書く

「正しく動くことを確認する」ではなく、何が表示されるか・どのような状態になるかを具体的に書きます。

| 曖昧な例             | 具体的な例                              |
| ---------------- | ---------------------------------- |
| ログインが成功することを確認する | ダッシュボード画面が表示されることを確認する             |
| エラーが出ないことを確認する   | JavaScript コンソールにエラーが表示されないことを確認する |
| ドロップダウンの内容を確認する  | タイムゾーンのドロップダウンに 10 件の選択肢があることを確認する |

### テストデータと機密値を明示する

メールアドレス・カード番号などのテストデータは、シナリオに直接記述します。パスワードやワンタイムパスワードなどの機密値、共通で使う値、ファイルは、共有メモリーを使って変数 `{{PASSWORD}}`、OTP `{{OTP:LOGIN}}`、ファイル `{{file:INVOICE}}` のようなプレースホルダーで参照できます。ホスト名やアプリは、セッション作成時やケース実行時の設定で選択します。

```
カート画面で決済画面に進む
テスト用カード番号 4111111111111111 とパスワード {{PASSWORD}} を入力して決済する
注文確認画面が表示されることを確認する
```

確認メールや認証コードを使うフローでは、そのテストに割り当てられた受信用アドレスを使うこと、届いたメールを待ってリンクを開くことやコードを入力することまでシナリオに書きます。

```
サインアップ画面で、そのテストに割り当てられた受信用アドレスをメールアドレス欄に入力して送信する
届いた確認メールを待つ
メール内の確認リンクを開く
ダッシュボード画面が表示されることを確認する
```

iOS デバイスで実行するモバイル セッションでは、シナリオにファイルの共有メモリーを挿入できません。詳しくは [メモリーについて](/features-ja/memories/memory-overview.md) を参照してください。

### テストの目的が分かるように書く

同じ画面を操作しても、目的によって成功・失敗の判定基準は変わります。シナリオには、何を確認したいテストなのかが分かる表現を含めます。

| 目的     | 書き方の例                          |
| ------ | ------------------------------ |
| 機能確認   | ログイン後にダッシュボード画面が表示されることを確認する   |
| 不具合探索  | ログイン画面で操作上の問題がないかを確認する         |
| 検証ステップ | フォーム送信後にエラーメッセージが表示されないことを確認する |

### 1 セッションは 1 目的に絞る

1 つのセッションには、関連する操作と確認をまとめます。ログイン、プロフィール編集、退会など目的が異なる検証は、セッションやケースを分けると失敗時の原因を切り分けやすくなります。

## 避けたい書き方

| 避けたい例                 | 修正例                                                    | 理由                                                   |
| --------------------- | ------------------------------------------------------ | ---------------------------------------------------- |
| `#submit` ボタンをクリックする  | **送信** をクリックする                                         | AI テスターは画面表示から操作対象を判断します。セレクターや XPath を固定する必要はありません。 |
| 動作確認をする               | ホーム画面が表示されることを確認する                                     | 期待結果が曖昧だと、成功・失敗を判断しにくくなります。                          |
| ログインしてプロフィールを編集し、退会する | 目的ごとにセッションを分ける                                         | 無関係な検証を混ぜると、失敗時の原因を特定しにくくなります。                       |
| メールアドレスとパスワードを入力する    | メールアドレス `test@example.com` とパスワード `{{PASSWORD}}` を入力する | 入力値が欠けていると、AI テスターがテストを続行できないことがあります。                |

## ケースで使うときの注意

ケースとして保存して実行する場合は、開始位置、入力値、期待結果をシナリオだけで判断できるように書きます。ケースからの実行では **Interactive Mode** の初期値がオフのため、ユーザーへの追加確認に頼らない自己完結した内容にしてください。

詳しくは [Aximo の AI テスターについて](https://help.aximo.autify.com/features-ja/test-case-creation/pages/saDTz6koK1QiietgeViI#ユーザーとのやり取り) と [セッション実行中の操作](/features-ja/test-case-creation/session-execution.md) を参照してください。

## Web で使える拡張的な操作

Web セッションでは、画面操作に加えて、DevTools、ターミナル、HTTP リクエストなどをシナリオに含められます。

```
ログイン画面を開く
DevTools を開いて JavaScript コンソールにエラーが表示されていないことを確認する
```

```
ターミナルで npm run seed を実行する
ブラウザで http://localhost:3000 を開き、初期データが表示されることを確認する
```

## 入力制限と安全性

{% hint style="info" %}
シナリオは 10 文字以上、10,000 文字以内で入力します。Web ページや読み込んだ文書に含まれる指示は、元のシナリオより優先されません。
{% endhint %}

## 参考情報

* [AI テスターについて](/features-ja/test-case-creation/ai-tester.md)
* [セッションとケースについて](/features-ja/test-case-creation/test-case-creation-overview.md)
* [テストセッションの作成](/features-ja/test-case-creation/create-test-session.md)
* [ケースの作成](/features-ja/test-case-creation/create-test-case.md)
* [セッション実行中の操作](/features-ja/test-case-creation/session-execution.md)
* [メモリーについて](/features-ja/memories/memory-overview.md)
