From 90b8d0fbc0980caf17a708710457c0db799c78ce Mon Sep 17 00:00:00 2001 From: wait4xx Date: Sun, 1 Nov 2026 09:34:47 +0800 Subject: [PATCH] =?UTF-8?q?test(e2e):=20=3F=20=E5=B8=AE=E5=8A=A9=E6=B5=AE?= =?UTF-8?q?=E5=B1=82=E6=96=AD=E8=A8=80=E5=8A=A0=E5=9B=BA=E2=80=94=E2=80=94?= =?UTF-8?q?=E7=84=A6=E7=82=B9=E6=AE=8B=E7=95=99=E7=AB=9E=E6=80=81=E4=B8=89?= =?UTF-8?q?=E8=BF=9E=E6=B2=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 面板测试后焦点可能残留输入域致 ? 键被吞(今日第三次偶发): Esc 收场+activeElement blur+重试三连,3/3 稳定复现。 验证: E2E_BASE=dist 口连跑三轮 34/34 全绿 Spec: 2026-10-26_blog-5f Co-authored-by: GLM-5.3 --- tests/e2e.mjs | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) 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');