BrowserStack'te testleri çalıştırın. Kullanıcı "browserstack", "cross-browser", "bulut testi", "browser matrix", "safari'de test et", "firefox'ta test et" veya "browser uyumluluğu" gibi ifadeler kullandığında devreye girin.
cd ~/.claude/skills
git clone https://github.com/alirezarezvani/claude-skills.git claude-skills mkdir -p ~/.claude/skills/browserstack
curl -fsSL https://raw.githubusercontent.com/alirezarezvani/claude-skills/HEAD/.gemini/skills/browserstack/SKILL.md \
-o ~/.claude/skills/browserstack/SKILL.md Playwright testlerini BrowserStack'in bulut grid'inde çalıştırarak tarayıcı ve cihaz testlemesi yapın.
Ortam değişkenleri ayarlanmalıdır:
BROWSERSTACK_USERNAME — BrowserStack kullanıcı adınızBROWSERSTACK_ACCESS_KEY — erişim anahtarınızAyarlanmadıysa, kullanıcıya browserstack.com/accounts/settings adresinden nasıl alacaklarını gösterin ve durdurun.
/pw:browserstack setup
Adımlar:
playwright.config.ts dosyasını kontrol edin// playwright.config.ts dosyasına ekleyin
import { defineConfig } from '@playwright/test';
const isBS = !!process.env.BROWSERSTACK_USERNAME;
export default defineConfig({
// ... mevcut konfigürasyon
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,
}))}`,
},
},
},
] : [
// ... yerel projeler fallback
],
});
"test:e2e:cloud": "npx playwright test --project='chrome@*' --project='firefox@*' --project='webkit@*'"/pw:browserstack run
Adımlar:
BROWSERSTACK_USERNAME=$BROWSERSTACK_USERNAME \
BROWSERSTACK_ACCESS_KEY=$BROWSERSTACK_ACCESS_KEY \
npx playwright test --project='chrome@*' --project='firefox@*'
/pw:browserstack results
Adımlar:
browserstack_get_builds MCP aracını çağırın/pw:browserstack browsers
Adımlar:
browserstack_get_browsers MCP aracını çağırın/pw:browserstack local
Localhost veya güvenlik duvarının arkasındaki staging için testleme:
npm install -D browserstack-local| Araç | Ne Zaman |
|---|---|
browserstack_get_plan |
Hesap limitlerini kontrol edin |
browserstack_get_browsers |
Kullanılabilir tarayıcıları listeleyin |
browserstack_get_builds |
Son build'leri listeleyin |
browserstack_get_sessions |
Bir build'deki oturumları alın |
browserstack_get_session |
Oturum ayrıntılarını alın (video, loglar) |
browserstack_update_session |
Geçti/başarısız olarak işaretleyin |
browserstack_get_logs |
Metin/network loglarını alın |
2 veya daha fazla bağımsız görevin paralel olarak yürütülebileceği ve aralarında state paylaşımı ya da sıralı bağımlılık olmadığı durumlarda kullanın.
Ayrı bir oturumda inceleme kontrol noktaları ile yürütülecek yazılı bir uygulama planınız olduğunda kullanın.
Mevcut oturumda bağımsız görevlerle uygulama planlarını yürütürken kullanın
Herhangi bir hata, test başarısızlığı veya beklenmeyen davranışla karşılaştığınızda, çözüm önerisi sunmadan önce kullanın.
Herhangi bir feature ya da bugfix uygulamaya başlamadan önce kullanın.
Yeni beceriler oluştururken, mevcut becerileri düzenlerken veya dağıtımdan önce becerileri doğrularken kullanın.