Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #354 +/- ##
=======================================
Coverage 25.66% 25.66%
=======================================
Files 309 309
Lines 31240 31240
Branches 1546 1546
=======================================
Hits 8017 8017
Misses 23223 23223 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Pull request overview
E2E テストのフレーク低減を目的に、外部サービス依存のテストを CI でスキップし、固定待機を条件待ちへ置き換える方向の改善を行う PR です。
Changes:
- 外部サービスに依存する E2E を CI では
test.skipで実行しないように変更 - Hub 関連のテストで固定
waitForTimeoutをexpect.poll/waitForに置換して安定化 - OptionsPage のリロード後待機時間を短縮
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| packages/extension/e2e/url-status.spec.ts | 以前は常時 skip だった URL ステータス確認を、CI のみ skip に変更 |
| packages/extension/e2e/pages/OptionsPage.ts | reset 後の固定待機を 500ms→100ms に短縮 |
| packages/extension/e2e/page-action.spec.ts | Amazon 等の外部サイト依存テストを CI で skip |
| packages/extension/e2e/hub.spec.ts | 固定待機を expect.poll と可視化待ちに置換し、フレーク低減 |
| const reloadPromise = this.page.waitForLoadState("domcontentloaded") | ||
| await okButton.click() | ||
| await reloadPromise | ||
| await this.page.waitForTimeout(500) | ||
| await this.page.waitForTimeout(100) | ||
| } |
There was a problem hiding this comment.
resetSettings() の末尾が waitForTimeout(100) になっていますが、固定スリープは環境差で再度フレークしやすいです(importSettings() は expect.poll で getCommands の反映を待っています)。
- domcontentloaded 後に「設定が既定値へ反映されたこと」(例: getCommands の内容が変化/安定したこと、または特定UI要素の表示)を条件待ちする形に寄せてください。
PR レビュー: Fix: Flaky testsこのPRはフレーキーなE2Eテストの修正を目的としており、アプローチは全体的に正しい方向性です。 良い点1. 固定の 2.
3. 外部サービステストのCIスキップ (
問題点・改善提案[重要] E2E-90, E2E-91 に残存する 今回修正されたE2E-92と同様に、E2E-90とE2E-91も // 推奨パターン
await downloadButton.click()
await expect.poll(
async () => {
const commands = await getCommands()
return (commands?.length ?? 0) > countBefore
},
{ timeout: 5000 },
).toBe(true)[軽微] 500ms から 100ms への短縮は改善ですが、固定待機であることに変わりありません。 [確認]
まとめ
E2E-90 と E2E-91 の |
コードレビューPR #354「Fix: Flaky tests.」のレビューを行いました。フレーキーなE2Eテストの修正として全体的に良い方向性ですが、いくつか指摘事項があります。 警告: バグ・潜在的な問題1.
|
No description provided.