AI動画生成の受け入れ条件を「動画ファイルが表示される」にすると、入力の欠落やレビュー漏れを見逃します。本稿では、公開ページから読めるワークフローを材料に、商品画像から候補の承認までをテスト可能な契約へ分解します。内部実装、性能値、広告成果は扱いません。
対象範囲を二つの入口で整理する
AI Video Animation Generator の公開説明には、スクリプトと商品写真、動画の長さ・品質・比率・出力数、生成後のプレビューとダウンロードが登場します。アニメーション側の主な検証対象は、素材と動きの指定が候補に引き継がれることです。
AI Marketing Video Generator では、商品画像やテキスト、テンプレート、AIアバター、音声、9:16、複数バリエーションが説明されています。マーケティング側では、フック、話者、音声、商品事実が候補ごとに追跡できることが重要になります。
要件と受け入れ観点
| 要件ID | 対象 | 契約 | 受け入れ観点 |
|---|---|---|---|
| ANI-01 | アニメーション | プロンプト、参考画像、動き | 入力がレビュー画面に残る |
| MKT-01 | マーケティング | 商品画像、フック、話者、音声 | 候補ごとの差分が読める |
| OUT-01 | 共通 | 比率、長さ、品質、出力数 | 確定値と候補が一致する |
| ERR-01 | 共通 | 生成失敗 | 入力を保持して再試行できる |
| REV-01 | 共通 | 承認状態 | 承認版だけが書き出せる |
「複数バリエーション」は数の確認だけでは不十分です。各候補で何を変えたかが残らなければ、比較結果を次の制作へ移せません。
状態遷移をテストケースにする
この図は実装を示すものではなく、受け入れ条件を並べるための設計案です。特に、エラー後に入力が消えないこと、候補を修正したら以前の承認が解除されること、承認前のダウンロードを防ぐことを分けて検証します。
代表的なテストケース
- 商品画像とプロンプトを入力し、比率を9:16から16:9へ変更しても、素材と動きの説明が保持される。
- マーケティング動画でフックだけを変更し、話者、音声、商品事実が意図せず変わらない。
- 生成中にGenerateを二度押しても、同一ブリーフの重複ジョブを登録しない。
- エラーを表示した後、再試行画面に画像、台本、比率、出力数が残る。
- 候補を編集した時点で、前の承認済み表示が未承認へ戻る。
- 書き出し前に、字幕、音声、商品表現、権利、掲載先の比率を確認できる。
Playwrightで契約を先に書く
以下は実DOMを確認したセレクターではなく、望ましい契約を示す例です。
test("エラー後も確定済み入力を保持する", async ({ page }) => {
await page.getByRole("textbox", { name: "Prompt" })
.fill("A product rotates while the camera moves closer");
await page.getByRole("radio", { name: "9:16" }).check();
await page.getByRole("button", { name: "Generate" }).click();
await expect(page.getByRole("alert")).toContainText("Try again");
await expect(page.getByRole("textbox", { name: "Prompt" }))
.toHaveValue(/product rotates/);
});
実装後は実際のラベルと状態通知に置き換えます。重要なのはクリック列ではなく、入力、差分、承認境界が再現できることです。Nextify の公開フローを題材にすれば、生成器を導入する前のQA観点をチームで共有できます。