不安定なブラウザテストは、何時間も及ぶデバッグ時間を浪費します。安定したセレクター、スマートな待ち処理、検出回避の自動化のための Playwright パターンを学びましょう。
Die Skill-ZIP herunterladen
In Claude hochladen
Gehe zu Einstellungen → Fähigkeiten → Skills → Skill hochladen
Einschalten und loslegen
Teste es
Verwendung von "browser-automation". ログインボタンで要素が見つからないエラーによりテストが失敗する
Erwartetes Ergebnis:
CSS セレクターを getByRole に置き換えます:await page.getByRole('button', { name: 'Sign in' }).click()。Playwright は要素が操作可能になるまで自動的に待機します。
Verwendung von "browser-automation". 個別に実行するとテストは通過するが、まとめて実行すると失敗する
Erwartetes Ergebnis:
test.beforeEach で context = await browser.newContext() を使用して、テストごとに新しいブラウザコンテキストを作成します。これにより、テスト間で Cookie と localStorage が分離されます。
Sicherheitsaudit
SicherStatic analysis produced false positives on markdown content. Backticks on line 71 are inline code formatting, not shell execution. No cryptographic code exists on lines 3 or 74. This is purely instructional documentation with no executable security risks.
Qualitätsbewertung
Was du bauen kannst
E2E テストアーキテクチャ
不安定な失敗のない CI/CD パイプラインで一貫して実行される信頼性の高いエンドツーエンドテストを構築します。
ウェブスクレイピングシステム
動的コンテンツに対応し、検出を回避し、長期間にわたり壊れることなく実行されるスクレイパーを作成します。
AI エージェントブラウザインタラクション
適切な待機戦略とセレクターを使用して、AI エージェントがウェブインターフェースと確実に連携できるようにします。
Probiere diese Prompts
ボタンのクリックを試みると失敗する不安定なテストがあります。このテストは CSS セレクターを使用していますが、要素が見つからないことがあります。ユーザー視点のロケーターと適切な待機パターンを使用して書き直すのを手伝ってください。
テストがブラウザ状態を共有しているため、テスト同士が干渉しています。各テストが完全に分離され、新鮮な Cookie、ストレージ、コンテキストで実行されるようにテストスイートを構成する方法を示してください。
ボット検出を使用するウェブサイトをスクレイピングする必要があります。ステルス技術の実装、リクエスト間の適切な遅延の設定、予期せず表示されるポップアップダイアログの処理についてガイドしてください。
テストがローカルでは通過するのに CI で断続的に失敗しています。トレース収集の設定、一貫したビューポート設定の実施、失敗の分析による根本原因の特定を手伝ってください。
Bewährte Verfahren
- 壊れやすい CSS や XPath セレクターの代わりに、getByRole、getByText、getByLabel などのユーザー視点のロケーターを使用する
- 手動のタイムアウトや sleep 呼び出しを追加する代わりに、Playwright の自動待機メカニズムを信頼する
- 完全な分離を確保し、状態の漏洩を防ぐために、各テストを新しいブラウザコンテキストで実行する
Vermeiden
- 特定の条件を待つのではなく、任意の waitForTimeout 呼び出しを追加する
- セマンティックなユーザー視点のロケーターの代わりに、CSS セレクターや XPath を最初の選択肢として使用する
- 複数のテストで単一のブラウザコンテキストを共有し、状態の汚染を引き起こす
Häufig gestellte Fragen
なぜテストは CI で断続的に失敗するのにローカルでは通過するのですか?
CSS セレクターとユーザー視点のロケーターの違いは何ですか?
スクレイパーがボット検出を回避するにはどうすればよいですか?
プロジェクトには Playwright と Puppeteer のどちらを使用すべきですか?
テスト中に表示されるポップアップダイアログはどのように処理すればよいですか?
テストにはどのビューポートサイズを使用すべきですか?
Entwicklerdetails
Autor
sickn33Lizenz
MIT
Repository
https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/browser-automationRef
main
Dateistruktur
📄 SKILL.md