bug0inc/passmark

The open-source Playwright library for AI browser regression testing with intelligent caching, auto-healing, and multi-model verification.

何を解決するか

Passmark は、従来のセレクタベースのブラウザ回帰テストの脆弱性を排除するための Playwright ライブラリです。開発者は自然言語でテストを記述でき、DOM 構造が変更されてもテストが壊れることを防ぎつつ、マルチモデル AI コンセンサスエンジンによる高信頼性のアサーションを提供します。

動作方法

Passmark は Playwright と統合され、平易な英語で記述されたブラウザステップを実行します。AI モデルを使用してこれらの記述をアクションに翻訳します。安定性と正確性を確保するために、以下の主要なメカニズムを採用しています:

  • マルチモデルコンセンサス: アサーションは Claude と Gemini の両方で並列に検証されます。両者が合意しない場合、第三者の仲裁モデルが衝突を解決します。
  • インテリジェントキャッシュ: 成功したアクションは Redis に保存されます。以降の実行ではまずキャッシュされたアクションを使用し、失敗した場合は AI 実行にフォールバックし、キャッシュを「自己修復」します。
  • 実行モード: 効率性を高めるために標準的な ARIA アクセシビリティスナップショットをサポートし、OpenAI のコンピュータ使用エージェントを用いた「CUA モード」(Computer Use Agent)で視覚的・スクリーンショット駆動の自動化を実現します。
  • 動画アサーション: トーストメッセージのような一時的な UI 要素に対して、ステップ実行を記録し、Gemini の Files API を使用して動画に基づいてアサーションを評価できます。

対象ユーザー

特に AI コーディングエージェントが頻繁に UI を変更する環境で、CSS セレクタや XPath の更新を繰り返し行わずに安定したエンドツーエンドブラウザテストを維持したい QA エンジニアや開発者に最適です。

特徴

  • 自然言語ステップ: 厳密なコードセレクタではなく、記述の連続としてテストを記述できます。
  • コンセンサスベースの検証: 複数の LLM を使用してテスト結果を検証することで、フラッキーを低減します。
  • 自己修復キャッシュ: 伝統的なテストの高速性と AI の UI 変更への適応能力を組み合わせます。
  • 柔軟な AI ルーティング: 直接プロバイダ SDK または Vercel、OpenRouter、Cloudflare などの AI ゲートウェイをサポートします。
  • 統合されたメールテスト: 一時メールプロバイダのサポートにより、認証フローのテストが可能になります。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト