次世代検証ツール選定案_問3_デスクトップWeb_回帰テスト版

問い 3 (回帰テスト版) ── macOS / Windows 11 デスクトップ全ブラウザ Web アプリ検証ツールの選定

本書の前提: 「CI/CD サイクルを捨て、リリース直前 / 月次 / 四半期など 手動トリガーの回帰テスト のみを実行する」運用に最適化したベストプラクティス。

底本: 次世代検証ツール選定案_問3_デスクトップWeb.md (CI/CD 統合前提) の結論を、回帰テスト前提に書き直したもの。

調査日: 2026-06-08


結論 (回帰テスト版・最終推奨)

Playwright をコアフレームワークとする方針は維持しつつ、Microsoft Playwright Workspaces の per-minute pay-as-you-go 課金特性を最大限活用する。BrowserStack も Pro 月額固定から Live $39/月に縮退、Visual AI は OSS で代替。回帰テスト前提では MPT の経済性が CI/CD 前提時よりさらに際立つ。

レイヤ CI/CD 前提版 回帰テスト版 変更理由
自動化基盤 Playwright + MPT (主) Playwright + Microsoft Playwright Workspaces (per-minute) per-minute 課金は回帰運用に最適、変更なし
Safari 検証 (macOS 実機) BrowserStack Automate $175/月 BrowserStack Live $39/月 + Playwright スクリプト 月次集中実行なら Live で十分
視覚検証 (主救済) 自社 Visual Diff + BrowserStack Screenshot Compare 自社 Visual Diff (PixelMatch / SSIM) のみ 商用 AI 不要
DRM フォールバック <video> 監視 + 閾値超え時手動 <video> 監視 + 必ず手動目視レビュー 月次運用では手動が常態
アクセシビリティ axe-core を別レイヤで CI 統合 axe-core を手動実行で活用 CI 統合不要
マルチモーダル LLM 本番排除 変更なし
端末ファーム MPT (Linux/Windows) + BrowserStack (Safari) MPT (Linux/Windows、必要分のみ) + BrowserStack Live (Safari、手動 + 月 1 回 Playwright 実行) per-minute + 月額最低プランの組合せ

1. CI/CD を捨てる判断の影響

1-1. 失うもの

1-2. 得るもの

1-3. 適合する運用パターン


2. ツール選定の再設計

2-1. Microsoft Playwright Workspaces (MPT) ── 回帰テストで最も輝く

CI/CD 前提版でも MPT を主基盤としたが、回帰テスト前提ではその経済性がさらに際立つ:

想定実行量 CI/CD 前提 (月) 回帰テスト前提 (月)
Linux ホスト 5,000 min/月 $50/月
Linux ホスト 500 min/月 (回帰のみ) $5/月
Windows ホスト 500 min/月 (回帰のみ) $10/月
30 日 100 min 無料枠 (CI 連続実行で即消費) 回帰 1 回分が無料枠で完結する可能性

月次回帰で 200-500 test minutes 程度であれば、年間 $60-180 で MPT を運用できる

2-2. BrowserStack: Automate Pro $225/月 → Live $39/月 に縮退

CI/CD 前提版では BrowserStack Automate Pro $225/月 (Safari 専用 1 並列) を採用したが、回帰テストでは:

2-3. Visual AI: BrowserStack Screenshot Compare 廃止 → OSS Visual Diff のみ

BrowserStack Screenshot Compare は CI で毎日大量比較を行う前提で TCO が安い設計。月次運用では:

// Playwright Test の組み込み visual comparison でも代用可能
import { test, expect } from '@playwright/test';

test('top page visual regression', async ({ page }) => {
  await page.setViewportSize({ width: 1920, height: 1080 });
  await page.goto('https://example.com/');
  // Playwright 公式の toHaveScreenshot は内部で pixelmatch を使用
  await expect(page).toHaveScreenshot('top.png', { maxDiffPixelRatio: 0.01 });
});

2-4. axe-core: CI 統合不要、回帰時に手動実行

axe-core は Playwright と統合して @axe-core/playwrightaccessibilityViolations を取得できる。CI 統合せずに 回帰実行時の最終チェック として使う:

import AxeBuilder from '@axe-core/playwright';

test('top page a11y', async ({ page }) => {
  await page.goto('https://example.com/');
  const results = await new AxeBuilder({ page }).analyze();
  // CI 不採用なら、test レポートを人間が読む前提で fail にしない選択肢もあり
  console.log(`A11y violations: ${results.violations.length}`);
});

2-5. DRM フォールバック: <video> プロパティ監視 + 必ず手動目視

CI/CD 前提版では「閾値超え時のみ手動」だったが、月次回帰では:

2-6. 端末ファーム費用試算 (回帰テスト前提)

ファーム CI/CD 前提版 (月額) 回帰テスト版 (月額) 年額差分
MPT Linux $50 $5 $540 削減
MPT Windows $100 $10 $1,080 削減
BrowserStack $175-225 $39 $1,632-2,232 削減
BrowserStack Screenshot Compare (含む) $0 (OSS)
合計年額 約 $3,300-3,900/年 約 $648/年 約 $2,700-3,300 削減 (~80%)

3. 階層型検証 (回帰テスト版に簡素化)

領域 CI/CD 前提版 回帰テスト版
通常 DOM 操作 Playwright auto-wait + ベースライン 変更なし
Canvas / WebGL 自社 Visual Diff + 商用 Visual AI 自社 Visual Diff のみ + 手動目視
複雑な layout 差分 BrowserStack Screenshot Compare PixelMatch / SSIM + 手動目視
DRM <video> プロパティ + 閾値超え時手動 <video> プロパティ + 必ず手動目視
アクセシビリティ axe-core CI 統合 axe-core 手動実行 (回帰時)

4. 採用基準と Anti-pattern (回帰テスト版)

採用基準

観点 必須要件
コアフレームワーク Playwright (OSS)
MPT 採用 per-minute 課金、Linux 中心、Windows は必要分のみ
Safari 検証 BrowserStack Live (月額最低プラン) 経由で実機実行
視覚比較 OSS (PixelMatch / SSIM / Playwright built-in) を主軸
DPI 対応 Playwright deviceScaleFactor を 1x / 1.5x / 2x / 3x で明示固定
アクセシビリティ axe-core を回帰実行時に必ず実行
マルチモーダル LLM 判定オラクルとして使わない (デバッグ補助のみ可)

Anti-pattern (回帰テスト前提)


5. 運用パターン (月次回帰の SOP 例)

5-1. 月次回帰の流れ

番号 作業 担当 想定時間
1 Playwright / @axe-core/playwright のバージョン更新確認 QA 10 分
2 ローカル MacBook / Windows PC で npx playwright install QA 5 分
3 MPT で Linux ホスト (Chrome / Firefox / Edge) を実行 QA 30-60 分
4 MPT で Windows ホスト (Edge / Chrome on Windows 固有確認) を実行 QA 30-60 分
5 BrowserStack Live で macOS Safari 実機にて Playwright スクリプト実行 QA 30-60 分
6 PixelMatch / SSIM 差分検出された画面の目視確認 QA 1-2 時間
7 DRM 領域シナリオの手動目視レビュー QA 30 分
8 axe-core レポートのアクセシビリティ違反確認 QA + Designer 1 時間
9 レポート作成、Issue 起票 QA 1 時間
合計 約 6-8 時間 (1 営業日以内)

5-2. テスト戦略の優先順位 (回帰テスト前提)

  1. クリティカルパス優先: 課金 / ログイン / 主要動線を Chrome / Edge / Safari の 3 ブラウザで 100% カバー
  2. DPI 別実行: 1x (Windows 標準) / 2x (Retina) で代表シナリオ実行、視覚差分検出
  3. Firefox はサンプル: 主要動線のみ実行、レアブラウザ向けスポット
  4. アクセシビリティ: axe-core で WCAG 違反を抽出、人間が優先度判定
  5. DRM / Canvas は手動補完: 自動化を諦め、リリース直前に必ず人手確認

6. 対立点と裁定 (回帰テスト前提で再評価)

対立項目 CI/CD 前提版の裁定 回帰テスト版の裁定
MPT 主採用 vs BrowserStack 主採用 MPT 主採用 変更なし (per-minute 課金特性は回帰でも優位)
商用 Visual AI ベンダー BrowserStack Screenshot Compare OSS (PixelMatch / SSIM) に変更
DRM フォールバック設計 手動レビュー主体 (閾値超え時) 必ず手動レビュー
axe-core 統合 別レイヤで CI 統合 (段階的) 回帰実行時に手動実行
マルチモーダル LLM 本番完全排除 変更なし
BrowserStack プラン Automate $175/月 Live $39/月 に縮退

7. 残課題

  1. BrowserStack Live $39/月で Playwright on macOS Safari 実機の利用可否確認: 公式 docs では Automate 系の機能、Live で動くかは要確認 (本書では Live で動かない場合は Automate を「月次のみ購入」する運用で年額 $175 × 1 ヶ月 = $175 として想定)
  2. MPT の最低利用料金 (30 日無料枠を超えた後の固定費の有無): 公式 docs 確認
  3. PixelMatch / SSIM / Playwright built-in toHaveScreenshot の誤検知率実測: 商用 Visual AI <0.5% に対しどこまで近づけるか
  4. axe-core の回帰実行 SOP: WCAG 違反の重要度判定基準、Issue 起票テンプレート整備
  5. DRM 領域の手動目視レビュー SOP: チェックリスト、担当者、頻度
  6. OS ネイティブダイアログ (プリント / ファイル選択 / SSO) の手動補完範囲を明文化
  7. MPT の長期価格安定性: Azure App Testing の価格改定リスク、長期契約での固定化の可否

8. CI/CD 復活への分岐条件

以下のいずれかが発生した時点で、本書を破棄し CI/CD 前提版 (次世代検証ツール選定案_問3_デスクトップWeb.md) への移行を検討する:


9. 参考文献

本書は底本 次世代検証ツール選定案_問3_デスクトップWeb.md の参考文献をすべて引き継ぐ。回帰テスト版固有の追加情報は以下:

補助参考


  1. BrowserStack docs — Playwright Safari ガイド. https://www.browserstack.com/guide/playwright-safari↩︎