エンドツーエンドテストのシナリオをカバーできるよう、mablトレーナーはWebアプリからのファイルダウンロードを検出し、アサーションを自動的に追加します。デフォルトでは、トレーナーはダウンロードされたファイルの名前に対してアサーションを行いますが、ファイルの内容やその他のメタデータを検証するようにアサーションを編集することもできます。
この記事では、Trainerでダウンロードアサーションを使用する方法について説明します。具体的には…
Trainerでのダウンロードアサーションステップ
ファイルメタデータのアサーション
ファイル名、ファイルタイプ、ファイルサイズなどのファイルメタデータをアサートするには、アサーションを編集をクリックしてください。または、ダウンロードアサーションステップの編集ペンシルをクリックしてください。
動的に生成されるファイル名
ダウンロードされるファイルの名前を動的に生成するアプリケーションの場合、ファイルがダウンロードされたことをアサートするために、次のいずれかのワークフローを試すことができます。
- 部分文字列マッチングを使用する - ファイル名の一部が予測可能な場合は、contains(含む)、starts with(で始まる)、ends with(で終わる)、またはmatches regex(正規表現に一致する)などの部分一致アサーションタイプを使用してください。
-
mabl変数構文を使用する - ファイル名の生成方法がわかっている場合、またはダウンロード前にページからファイル名を抽出できる場合は、ファイル名を変数に保存し、mabl変数構文(例:
{{@filename_var}})を使用してそのファイル名に対してアサーションを実行します。 - ファイル名のアサーションを削除する - ダウンロード前にファイル名が分からない場合は、ダウンロードのアサーションからファイル名を外し、MIME タイプやファイルサイズなど、ほかの属性でアサートしてください。
ダウンロードアサーションでのmabl変数構文の使用
正規表現アサーションに関する注意事項
正規表現に一致するアサーションには、JavaScriptの正規表現構文を使用してください。スラッシュが指定されていない場合、mablはファイル名アサーションに対して大文字と小文字を区別しないマッチングをデフォルトとし、異なるファイルシステム間での互換性を確保します。この設定は、デフォルトで大文字と小文字を区別する他のアサーションタイプの正規表現マッチングとは異なります。
ファイルの内容をアサートする
ダウンロードしたファイルのコンテンツをビジュアルアサーションで検証することもできます。以下のファイルタイプは、ファイルコンテンツのアサーションに対応しています。なお、ファイルのメタデータのアサーション(ファイル名、ファイルタイプ、ファイルサイズ)は、すべてのファイルタイプに対応しています。
| カテゴリ | ファイルタイプ |
|---|---|
| ドキュメント | PDF、プレーンテキスト(.txt) |
| スプレッドシート | Excel (.xlsx, .xls)*, CSV (.csv) |
| 画像 | PNG, JPEG, WebP |
| ビデオ | MP4, MPEG, WebM, QuickTime (.mov), FLV, WMV, 3GPP |
| 音声 | MP3, WAV, OGG, FLAC, AAC, M4A, PCM |
| データファイル | JSON、XML、ログファイル(.log)。バイナリデータはサポートされていません。 |
*Excelファイルは分析のためにCSVに変換されます。
ダウンロードしたファイルの内容をアサーションするには、次のステップに従ってください。
- ダウンロードアサーションステップを編集します。
- 検証したい内容を自然言語のプロンプトで入力してください。
- ファイルの内容を確認したい場合は、ファイルを表示をクリックしてください。
- アサーションをテストする準備ができたら、アサーションをテストをクリックしてください。
ファイルダウンロード用のビジュアルアサーションをテストする
アサーション条件
アサーションを初めてテストすると、mablはアサーション基準を生成します。これらの基準は、アサーションの説明とともにLLMに送信され、アサーションの一部として評価するための一貫した基準セットを提供します。
条件が意図と一致しない場合は、必要に応じて条件を追加、編集、または削除してください。すべての条件を置き換えるには、テストアサーションのドロップダウンにある条件を再生成ボタンをクリックしてください。
スクリーンショットとビューポート
ファイルのダウンロードに対してアサーションを行う場合、ビジュアルアサーションには、ダウンロードしたファイルの内容と、そのファイルをダウンロードした元のページのスクリーンショットの両方が含まれます。ページのスクリーンショットを使うと、ファイルとアプリ全体にまたがるデータに対して検証を作成できます。たとえば、スプレッドシートのファイルデータが、現在のページに表示されている製品情報と一致していることをアサートできます。
スクリーンショットには、現在ビューポートに表示されているページの範囲のみが含まれる点に注意してください。ビューポート内で完全に見えていない要素にアサーションを行うと、画面外の部分は評価に含まれません。ウィンドウサイズを変更するには、アサーションの前に「ビューポートの設定」のステップを追加してください: + (ステップを追加) > ビューポートの設定.
ビジュアルアサーションを使用したテストの実行
ビジュアルダウンロードアサーションは、Trainerリプレイ、ローカル実行、およびクラウド実行でサポートされています。mabl CLIからローカル実行をトリガーする場合、ビジュアルアサーションを有効にするには--allow-billable-featuresフラグを使用する必要があります。例:
mabl tests run --id {test-id} --allow-billable-features実行と使用状況
トレーニング中は、ビジュアルアサーションの使用回数に制限はなく、必要なだけアサーションを繰り返し調整できます。ただし、テストを実行する際は、以下の点に注意してください。
- ビジュアルダウンロードアサーションを含むビジュアルアサーションは、テストごとに30件までに制限されています。
- ビジュアルアサーションを含むクラウド実行は、追加で0.5クレジットを消費します。
- ビジュアルアサーションは、 パフォーマンステストのコンテキスト内で実行すると失敗します。
ダウンロードアサーションの再生
Trainerでダウンロードアサーションを再生するには、ダウンロードをトリガーするクリックステップの直前にTrainerカーソルを移動し、再生をクリックします。Trainerは、繰り返しダウンロードされたファイルに追加される番号を自動的に省略するため、アサーション比較ではfoo (1).zipがfoo.zipとして扱われます。この機能により、手動でファイルをクリーンアップすることなく再生テストが可能になります。
Chromeの制限により、ファイルのダウンロードは100回までです。mablトレーナーでダウンロードステップの再生が100回を超えると、ダウンロードを行うたびにChromeでファイル保存モーダルが自動的に開くため、それ以上ダウンロードステップの再生はできません。再生機能を復元するには、ダウンロードされたファイルをマシンから削除してください。
制限事項
テストでファイルをダウンロードする際は、以下の制限事項に注意してください。
- ダウンロードアサーションは、記録されたクリックステップに対してサポートされています。CSSまたはXPathを使用するクリックステップでは、ダウンロードアサーションはトリガーされません。
- Trainerは、ファイルのメタデータとファイルの内容のいずれについても、複数のダウンロードを並行して検証することはできません。
- mablは、各トレーニングセッションおよびテスト実行の終了時に、ダウンロードされたファイルを自動的にクリーンアップします。そのため、トレーニングセッション外でダウンロードされたファイルの内容を手動で確認することはできません。
- ダウンロードアサーションが失敗した場合、テストは実行を停止し、失敗となります。「テスト終了時に失敗にする」などの他の失敗動作は、現在ダウンロードアサーションではサポートされていません。
ファイルメタデータの制限
- ダウンロードアサーションは現在、ファイル名内でのワイルドカード(
*)の使用をサポートしていません。 - アクセント記号を含むファイル名に対するダウンロードアサーションはサポートされていません。
ファイルサイズの制限
- 個々のファイルは7 MB未満である必要があります。
- スプレッドシートは、シート数が10枚、1シートあたりの行数が1,000行に制限されています。