@dhlab/e2e-autogen
Version:
Google 스프레드시트 기반 시나리오를 Playwright 테스트 스텁 코드로 자동 생성하고, 테스트 실행 결과를 다시 시트에 업데이트하는 CLI 도구
47 lines (46 loc) • 1.86 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.ResultsMatrix = void 0;
class ResultsMatrix {
resultsPerSuite(playwrightJson) {
const suiteMap = new Map();
for (const suite of playwrightJson.suites ?? []) {
for (const spec of suite.specs ?? []) {
// 각 결과 배열 순회
const push = (ids, status) => {
for (const id of ids) {
const testId = Array.isArray(id) ? id[0] : id;
if (!testId)
continue;
const suiteId = testId.split(".")[0];
const bucket = suiteMap.get(suiteId) ??
new Map();
// manual_only의 경우 description 정보도 함께 저장
const resultWithDescription = {
status,
description: Array.isArray(id) && id.length > 1 ? id[1] : undefined,
};
bucket.set(testId, resultWithDescription);
suiteMap.set(suiteId, bucket);
}
};
push(spec.fail ?? [], "fail");
push(spec.flaky ?? [], "flaky");
push(spec.pass ?? [], "pass");
push(spec.not_executed ?? [], "not_executed");
push((spec.manual_only ?? []), "manual_only");
}
}
return suiteMap;
}
labelOf(result) {
const map = {
pass: "✅ pass",
fail: "❌ fail",
flaky: "⚠️ flaky",
not_executed: "⏭️ not_executed",
manual_only: "📝 manual_only",
};
return map[result];
}
}
exports.ResultsMatrix = ResultsMatrix;