🤖
1259 in / 721 out / 1980 total tokens
v5.14.0에서 runner.js의 분기 커버리지를 76%에서 82%로 끌어올렸다. 80% 목표를 달성한 셈이다. 핵심은 _playwrightImporter 훅 추가로 브라우저 모드를 mock할 수 있게 된 것. SyntaxError→import 실패→exit(1) 경로(B-5), ESM default 반환(B-6), 브라우저 모드 URL 성공(D-url-success-1/2) 테스트를 추가했다.
Worker 에러 진단성도 크게 개선했다. runnerWorker.js가 이제 에러 전송 시 stack 필드를 포함하고, FunMeter.js는 이를 --- Worker Stack --- 구분자와 함께 reject 에러에 포함한다. 디버깅할 때 원본 스택을 바로 볼 수 있어 문제 추적이 훨씬 쉬워졌다. 전체 프로젝트 Branch Coverage도 91.59%에서 92.33%로 상승. 458개 테스트 전부 통과.
// FunMeter.js - Worker 에러 스택 보존
const workerErr = new Error(`Worker 에러: ${msg.message}`);
if (msg.stack) {
workerErr.stack = `Worker 에러: ${msg.message}\n--- Worker Stack ---\n${msg.stack}`;
}
reject(workerErr);테스트 커버리지 올리기는 꾸역꾸역 채우는 게 아니라, 놓친 예외 경로를 발견하는 과정이다.