0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

E2Eテストの「最後の砦」を攻略 - mablでファイルダウンロードとPDFの「中身」を徹底的に検証する

Last updated at Posted at 2025-10-28

はじめに

E2Eテストの自動化において、「最後の砦」として残されがちなプロセスはありませんか?

多くのチームにとって、それは「ファイルダウンロード」機能のテストです。「請求書発行」や「CSVエクスポート」ボタンを押した後、その先にある「ダウンロードされたファイルの中身」の検証は、非常に困難な課題でした。

従来の自動化ツールでは、

  1. ファイルがダウンロードされたかどうかの「確認」自体が難しい。
  2. ダウンロードしたPDFの中身(請求書の金額やスペックシートの内容)が正しいかの「検証」は、ほぼ不可能。

という2つの大きな壁がありました。

mablは、このE2Eテストにおける「最後の砦」を攻略するため、3つのレベルの検証機能を提供しています。本記事では、この3ステップを具体的なユースケースと共に紹介します。

レベル1:ダウンロードの「存在」を確認する (基本)

まずは「砦」の第一関門、「ファイルがダウンロードされたこと」の確認です。

mablは、このステップを驚くほど簡単に自動化できます。

mablの「ダウンロードのアサーション」機能
mabl Trainerでのテスト記録中、ダウンロードリンクをクリックすると、mablはダウンロード処理を自動検出します。

ファイルのダウンロード処理を自動検出

[Edit Assertion] ボタンをクリックすることで、アサーションステップを 自動で追加 します。

このアサーションは非常に強力で、単なる「ファイル名」だけでなく、以下の項目も検証できます。

ダウンロードされたファイルに関するアサーションを編集

  • ファイル名: (例: iba18_gold_winner.jpg, {{@filename}}のように変数名も指定可能)
  • ファイルタイプ: (例: image/jpeg, application/pdf, text/csv)
  • ファイルサイズ: (最小サイズ、最大サイズ、または正確なサイズ)

これにより、ファイル名が invoice_20251027.pdf のように動的に変わる場合でも、「ファイルタイプが application/pdf であること」や「ファイルサイズが0KBより大きいこと」を検証でき、正常にファイルが生成されたことを堅牢にテストできます。

レベル2:PDFの「点」を検証する (特定要素のアサーション)

mablの「PDFテスト」機能
mablは、ダウンロードしたPDFを「mabl PDFビューアー」という専用インターフェースで開き、Webページと同様にテスト対象にできます。

mabl PDFダウンロード検出時の画面

ユースケース(日本語の領収証発行の例):
1.  テスト対象のWebアプリで、領収書発行画面を開き、PDFをダウンロードします。
2.  Trainerの指示に従い、[Test Contents] ボタンをクリックし、ダウンロードしたPDFを「mabl PDFビューアー」で開きます。
3.  ビューアー内で、PDF内の特定の位置(=要素) に対してアサーションを作成できます。
4.  「領収書番号が変数 seqno と等しいこと」や「"宛先" の値が "舟木将彦" と等しいこと」といった、Webページの要素検証(点の検証) と全く同じ感覚で、日本語を含むPDFの中身をピンポイントでテストできます。

PDF内の要素の値をチェック

これにより、請求書や領収書の「金額」や「宛名」など、レイアウトが固定されたPDFの「点」の検証が可能になります。

レベル3:PDFの「面」を検証する (生成AIによる文脈アサーション)

レベル2で「砦」の内部に踏み込み、特定の「点」を検証できました。
しかし、最後の砦の「本丸」が残っています。

「ダウンロードした 10ページのスペックシート が、そもそも 期待していた製品のものか?」

このような、PDF全体の文脈 を検証するのは、レベル2の「点」の検証では不可能です。ここで前回の記事のテーマ「点から面へ」が、PDFテストの文脈で再登場します。

mablは、PDFに対しても 生成AIアサーション が可能です。

ユースケース(電子パーツ検索の例):
1.  電子パーツの検索サイトで、ある製品(例: C1608X5R1H104K)を検索します。
2.  検索結果から製品名をクリックし、そのテキストを変数 productName に保存します。
3.  製品詳細ページに移動し、「スペックシート」ボタンをクリックしてPDFをダウンロードします。
4.  mabl PDFビューアーでPDFを開き、生成AIアサーションを実行します。

「面」の検証プロンプト例:

PDFファイルが、{{@productName}} の技術仕様書(スペックシート)として内容が整合しているかを判断し、日本語で結果を通知。

AIがPDFの 全ページ を読み込み、「C1608X5R1H104K」という製品の仕様(例:キャパシタンス、定格電圧など)に関する記述があるかを文脈で判断します。ファイル名が spec_v3.pdf のようであっても、中身の妥当性(=面) を検証できます。

実例(農林水産省の統計PDF):

この「面」の検証の実際の例として、下のスクリーンショットをご覧ください。

令和7年産米の相対取引価格・数量

これは農林水産省のホームページから「令和7年産米の相対取引価格・数量(令和7年9月)(速報)(PDF : 157KB)」というリンクのテキストを変数 documentName に格納し、PDFファイルをダウンロードし、その後、生成AIアサーションを使い、「PDFの内容全体が、変数 documentName の示すタイトルと一致しているか」を検証した例です。

スクリーンショット中の アサーションが成功した理由 からも分かるように、AIはファイル名(aitaikakaku-441.pdf)ではなく、ダウンロードしたPDFの「中身」を実際に読み込み、内容が「令和7年産米の相対取引価格・数量」と一致するかを判断しています。

PDF以外のファイル(Excel、CSVなど)は?

本記事ではPDFの中身の検証に焦点を当てました。
PDFでは、ファイル内の特定の要素の値(点)でのアサーションと、生成AIを活用したファイルの内容(面)でのアサーションの両方が可能でした。

では、ビジネスシーンで多用される Excel(.xlsx)CSV(.csv)、さらには 画像(.png, .jpg)動画(.mp4)音声(.mp3) ファイルの中身はどうでしょうか?

mablの 生成AIアサーション は、ダウンロードされたこれらの様々なファイル形式に対しても適用可能です。レベル3で紹介した「ファイルの内容全体(面)」を文脈で検証するアプローチを、これらのファイル形式にも応用できます。

以下に、リリースノートで紹介されているような具体的なプロンプト例を挙げます。

CSVファイルの検証例:
表形式データの構造や値の妥当性をチェックできます。

  • プロンプト例:

ダウンロードした CSV の売上レポートに列が 12 個あること、また「Total Revenue」列に正の数値のみが含まれていることを検証します。

音声ファイルの検証例:
音声データの内容に関する品質やメタデータを確認できます。

  • プロンプト例:

ダウンロードした音声トラックに「バックグラウンドのノイズがなく、トラックの長さが3:00〜3:30の間である」ことをアサーションする。

(補足)PDFの特定領域の文言チェック:
レベル2の「点の検証」とは異なり、生成AIを使えばPDF内の特定の場所(例えばフッター)に必要な情報が含まれているかを、より柔軟に検証できます。

  • プロンプト例:

作成された請求書のフッターに、必要な法的免責事項の文言が表示されていることを確認します。

このように、生成AIアサーションを活用することで、PDFだけでなく、様々な種類のダウンロードファイルの中身までテストカバレッジを広げることが可能です。

まとめ:「最後の砦」の先へ

E2Eテストの「最後の砦」だったダウンロード機能の検証は、もはや「ファイルが存在すること」の確認だけではありません。

mablを活用することで、ビジネス要件に合わせて3段階の徹底的な検証が可能です。

1.  存在検証 (レベル1): ダウンロードとファイルタイプ、ファイルサイズを確認。
2.  点の検証 (レベル2): 請求書やフォームの「特定の値」を要素としてアサート。
3.  面の検証 (レベル3): スペックシートやレポートの「全体文脈」を生成AIでアサート。

これにより、Webページからその成果物であるドキュメントまで、E2Eテストのカバレッジをシームレスに拡張し、ビジネス全体の品質を継続的に担保できます。

mablを無料で試してみませんか?

今回ご紹介した機能を含む、mablの全ての機能を2週間無料でお試しいただけます。
ご興味のある方は、ぜひmabl日本語サイト右上の「MABL無料トライアル」からお申込みください。

(注:本記事で紹介した「PDFテスト」機能は、mablのサブスクリプションのアドオンとして提供されています。フリートライアル中、またはご契約時に、詳細は担当者までお問い合わせください。)

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?