diff --git a/tests/e2e.mjs b/tests/e2e.mjs index 73ef654..84750ec 100644 --- a/tests/e2e.mjs +++ b/tests/e2e.mjs @@ -101,9 +101,18 @@ ok('命令面板·Pagefind 搜索', hasResult); await page.keyboard.press('Escape'); // 5) 键盘帮助与 g-chords -await page.keyboard.press('?'); -await page.waitForTimeout(300); -ok('键盘 ? 帮助浮层', await page.locator('#kbd-help[open]').count() > 0); +// 加固:面板测试后焦点可能残留输入域(? 被吞成字符)——Esc 收场+blur+重试三连 +await page.keyboard.press('Escape'); +await page.evaluate(() => document.activeElement?.blur?.()); +await page.waitForTimeout(150); +let helpOpen = 0; +for (let i = 0; i < 3 && !helpOpen; i++) { + await page.keyboard.press('?'); + await page.waitForTimeout(250); + helpOpen = await page.locator('#kbd-help[open]').count(); + if (!helpOpen) { await page.keyboard.press('Escape'); await page.waitForTimeout(150); } +} +ok('键盘 ? 帮助浮层', helpOpen > 0); await page.keyboard.press('Escape'); await page.keyboard.press('g'); await page.keyboard.press('g');