browserstack について
Playwrightを設定し、BrowserStackのクラウドグリッドでテストを実行してブラウザー別の結果を確認するスキルです。ブラウザーやデバイスをまたいでテストするチーム向けで、関連コマンドとツールの利用にはMCPサーバーの手動登録が必要です。
主な機能
- 01PlaywrightとBrowserStackの設定
- 02複数ブラウザープロジェクトでのテスト実行
- 03ビルドとセッション結果の確認
- 04対応ブラウザーとOSの一覧表示
- 05トンネル経由のローカルテスト設定
活用シーン
- 01クラウドブラウザーでのPlaywrightテスト実行
- 02セッションの動画とログの確認
- 03ファイアウォール内のlocalhostのテスト
MCP 対応
BrowserStack MCPツールでプランやブラウザーの確認、ビルドとセッションの取得、セッション状態の更新、ログの参照を行います。サーバーは自動登録されないため、手動設定が必要です。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ alirezarezvani/ claude-skills --skill browserstackインストール後、Claude Code で/browserstackを入力して読み込まれたか確認します。
詳細
BrowserStack 連携
BrowserStack のクラウドグリッドで Playwright テストを実行し、クロスブラウザーおよびクロスデバイスのテストを行います。
前提条件
環境変数を設定する必要があります。
BROWSERSTACK_USERNAME— BrowserStack のユーザー名BROWSERSTACK_ACCESS_KEY— アクセスキー
設定されていない場合は、browserstack.com/accounts/settings から取得する方法をユーザーに案内して、停止してください。
BrowserStack MCP サーバーは自動登録されません(issue #978)。
pw-browserstackはすべてのユーザーで接続に失敗したため、プラグインの.mcp.jsonから削除されました(プラグインにはnode_modulesが含まれていません)。以下で使用するbrowserstack_*MCP ツールと/pw:browserstackコマンドは、手動で有効にするまで「tool not found」エラーで失敗します。プラグインのCLAUDE.mdの Integrations セクションを参照してください(cd integrations/browserstack-mcp && npm installを実行してから、ご自身のユーザーまたはプロジェクトの MCP 設定でサーバーを登録します)。環境変数を設定するだけでは不十分です。
機能
1. BrowserStack 用に設定する
/pw:browserstack setup
手順:
- 現在の
playwright.config.tsを確認します - BrowserStack 接続オプションを追加します。
// Add to playwright.config.ts
import { defineConfig } from '@playwright/test';
const isBS = !!process.env.BROWSERSTACK_USERNAME;
export default defineConfig({
// ... existing config
projects: isBS ? [
{
name: "chromelatestwindows-11",
use: {
connectOptions: {
wsEndpoint: `wss://cdp.browserstack.com/playwright?caps=${encodeURIComponent(JSON.stringify({
'browser': 'chrome',
'browser_version': 'latest',
'os': 'Windows',
'os_version': '11',
'browserstack.username': process.env.BROWSERSTACK_USERNAME,
'browserstack.accessKey': process.env.BROWSERSTACK_ACCESS_KEY,
}))}`,
},
},
},
{
name: "firefoxlatestwindows-11",
use: {
connectOptions: {
wsEndpoint: `wss://cdp.browserstack.com/playwright?caps=${encodeURIComponent(JSON.stringify({
'browser': 'playwright-firefox',
'browser_version': 'latest',
'os': 'Windows',
'os_version': '11',
'browserstack.username': process.env.BROWSERSTACK_USERNAME,
'browserstack.accessKey': process.env.BROWSERSTACK_ACCESS_KEY,
}))}`,
},
},
},
{
name: "webkitlatestos-x-ventura",
use: {
connectOptions: {
wsEndpoint: `wss://cdp.browserstack.com/playwright?caps=${encodeURIComponent(JSON.stringify({
'browser': 'playwright-webkit',
'browser_version': 'latest',
'os': 'OS X',
'os_version': 'Ventura',
'browserstack.username': process.env.BROWSERSTACK_USERNAME,
'browserstack.accessKey': process.env.BROWSERSTACK_ACCESS_KEY,
}))}`,
},
},
},
] : [
// ... local projects fallback
],
});
- npm スクリプトを追加します:
"test:e2e:cloud": "npx playwright test --project='chrome@*' --project='firefox@*' --project='webkit@*'"
2. BrowserStack でテストを実行する
/pw:browserstack run
手順:
- 認証情報が設定されていることを確認します
- BrowserStack プロジェクトを指定してテストを実行します。
BROWSERSTACK_USERNAME=$BROWSERSTACK_USERNAME \ BROWSERSTACK_ACCESS_KEY=$BROWSERSTACK_ACCESS_KEY \ npx playwright test --project='chrome@*' --project='firefox@*' - 実行状況を監視します
- ブラウザーごとに結果を報告します
3. ビルド結果を取得する
/pw:browserstack results
手順:
browserstack_get_buildsMCP ツールを呼び出します- 最新のビルドのセッションを取得します
- 各セッションについて、以下を確認します。
- ステータス(成功/失敗)
- ブラウザーと OS
- 所要時間
- 動画 URL
- ログ URL
- サマリーテーブルにまとめます
4. 利用可能なブラウザーを確認する
/pw:browserstack browsers
手順:
browserstack_get_browsersMCP ツールを呼び出します- Playwright 対応ブラウザーに絞り込みます
- 利用可能なブラウザーと OS の組み合わせを表示します
5. ローカルテスト
/pw:browserstack local
ファイアウォールの内側にある localhost またはステージング環境をテストする場合:
- BrowserStack Local をインストールします:
npm install -D browserstack-local - ローカルトンネルを設定に追加します
- セットアップ手順を提示します
使用する MCP ツール
| ツール | 用途 |
|---|---|
browserstack_get_plan | アカウントの上限を確認する |
browserstack_get_browsers | 利用可能なブラウザーを一覧表示する |
browserstack_get_builds | 最近のビルドを一覧表示する |
browserstack_get_sessions | ビルド内のセッションを取得する |
browserstack_get_session | セッションの詳細(動画、ログ)を取得する |
browserstack_update_session | 成功/失敗を設定する |
browserstack_get_logs | テキスト/ネットワークログを取得する |
出力
- クロスブラウザーテスト結果の表
- ブラウザーごとの成功/失敗ステータス
- 動画/スクリーンショットを含む BrowserStack ダッシュボードへのリンク
- ブラウザー固有の失敗があれば強調表示