MCP Server for Running E2E Tests について
Limetestは、自然言語でテストを定義し、AIで実行したいチーム向けのエンドツーエンドテストフレームワークです。CIワークフローにも対応し、Playwrightのスナップショットを使い、複雑な場面ではビジョンモードに切り替えます。
主な機能
- 01自然言語でのテストケース定義
- 02AIによるエンドツーエンドテスト実行
- 03Playwrightスナップショットテスト
- 04ビジョンモードへのフォールバック
- 05CIでのヘッドレステスト実行
活用シーン
- 01CIでAIが計画したエンドツーエンドテストを実行
- 02ブラウザーでAI生成コードを検証
- 03スナップショットテスト失敗時のビジョンモード利用
MCP 対応
Limetest MCPサーバーはPlaywrightを使い、MCPクライアントにエンドツーエンドテスト機能を提供します。エンドツーエンドモードにはOpenAI APIキーが必要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Limetest
Limetest は、CI ワークフローで実行できる、AI 機能を備えた最も軽量なエンドツーエンドテストフレームワークです。テストケースを自然言語で定義すれば、AI が実行を処理します。
主な機能
- AI 向けに最適化:テストケースを平易な言葉で定義すれば、AI がエンドツーエンドで実行します。
- 軽量で効率的:ピクセル分析の代わりに Playwright のスナップショットを活用することで、より高速で信頼性の高い実行を実現します。
- ビジョン機能:より高度なテストシナリオでスナップショットモードが失敗した場合は、ビジョンモードに切り替えます。
インストール
npm install @limetest/limetest
npx playwright install
ユーザーデータディレクトリ
limtest は、新しいプロファイルを使用して Chrome ブラウザーを起動します。プロファイルは次の場所に保存されます。
- `%USERPROFILE%\AppData\Local\ms-limetest\mcp-chrome-profile` on Windows
- `~/Library/Caches/ms-limetest/mcp-chrome-profile` on macOS
- `~/.cache/ms-limetest/mcp-chrome-profile` on Linux
使用方法
テストの実行
CI ワークフローでヘッドレス実行するには、--headless を使用します。
npx limetest example
limetest MCP サーバー
https://github.com/user-attachments/assets/b801f239-dc66-4b3b-bcf2-42e2a9a68721
Playwright を利用した Model Context Protocol(MCP)サーバーです。MCP クライアントでのエンドツーエンドテストを効率化します。
使用例
- LLM が計画し、実行する自動テスト
設定例
このリポジトリをクローンしたら、ビルドして、次のように E2E MCP サーバーを MCP クライアントに追加します。 この MCP サーバーをエンドツーエンドモードで実行するには、OpenAI API キーが必要です。
npm install @limetest/mcp
npx playwright install
次に:
{
"mcpServers": {
"limetest": {
"command": "npx",
"args": [
"npx @limetest/mcp",
"--api-key=<your openai api key>"
]
}
}
}
ログイン情報はすべてこのプロファイルに保存されます。オフライン状態を消去したい場合は、セッション間に削除できます。
謝辞
Limetest は Microsoft's Playwright MCP を基にしており、スタンドアロンのフレームワークとして自動エンドツーエンドテストに最適化されています。このプロジェクトは Apache 2.0 License の下で配布されています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。