From 5a7a6c4ae5a289f53e63372ed58c2b13e942df06 Mon Sep 17 00:00:00 2001 From: donghyeon-ka Date: Sun, 26 Jul 2026 00:32:50 +0900 Subject: [PATCH] test(performance): derive navigation target from route registry --- scripts/test-performance.mjs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/scripts/test-performance.mjs b/scripts/test-performance.mjs index 6f5eb4a..598ec0a 100644 --- a/scripts/test-performance.mjs +++ b/scripts/test-performance.mjs @@ -6,6 +6,7 @@ import process from "node:process"; import { chromium } from "@playwright/test"; import { evaluateLabBudget } from "../src/application/policies/performance-budgets.js"; +import { ROUTE_REGISTRY } from "../src/contracts/routes.js"; const server = spawn( "corepack", @@ -66,8 +67,13 @@ try { }).observe({ type: "layout-shift", buffered: true }); }); await page.goto(baseUrl, { waitUntil: "networkidle" }); + const targetLabel = + ROUTE_REGISTRY.SAMPLE_RESOURCE_LIST.navigationLabel; + if (!targetLabel) { + throw new Error("Performance route must be present in navigation."); + } const interactionStarted = performance.now(); - await page.getByRole("link", { name: "샘플 리소스" }).click(); + await page.getByRole("link", { name: targetLabel }).click(); await page.getByRole("heading", { name: "세션이 필요합니다." }).waitFor(); const namedInteractionMs = performance.now() - interactionStarted; const paint = await page.evaluate(