From 080c2a98f3b37468295a903570c5d8ace67e7383 Mon Sep 17 00:00:00 2001 From: Devon Powell Date: Thu, 21 May 2026 17:29:00 -0400 Subject: [PATCH] Nest taxonomy and config in report schema v3 --- docs/report-format.md | 11 +- schemas/report/v3.json | 31 +- src/helpers/report-builder.cjs | 38 +- .../data/validation/test-report-mocha.js | 60 +-- .../data/validation/test-report-playwright.js | 360 ++++++------------ .../validation/test-report-web-test-runner.js | 96 ++--- .../validation/test-report-webdriverio.js | 68 +--- 7 files changed, 246 insertions(+), 418 deletions(-) diff --git a/docs/report-format.md b/docs/report-format.md index 7ee83da..3a03728 100644 --- a/docs/report-format.md +++ b/docs/report-format.md @@ -52,15 +52,18 @@ stored in [AWS Timestream], please see [Storage Schema]. "column": "" }, "browser": "", - "timeout": "", + "config": { + "timeout": "" + }, "started": "", "duration": { "total": "", "final": "" }, - "tool": "", - "experience": "", - "type": "", + "taxonomy": { + "tool": "", + "type": "" + }, "retries": "", "github": { "codeowners": "" diff --git a/schemas/report/v3.json b/schemas/report/v3.json index 95ef9ad..87110da 100644 --- a/schemas/report/v3.json +++ b/schemas/report/v3.json @@ -138,22 +138,31 @@ "file" ] }, - "tool": { - "$ref": "#/$defs/nonEmptyUnpaddedString" - }, - "experience": { - "$ref": "#/$defs/nonEmptyUnpaddedString" - }, - "type": { - "$ref": "#/$defs/nonEmptyUnpaddedString" + "taxonomy": { + "type": "object", + "unevaluatedProperties": false, + "properties": { + "tool": { + "$ref": "#/$defs/nonEmptyUnpaddedString" + }, + "type": { + "$ref": "#/$defs/nonEmptyUnpaddedString" + } + } }, "started": { "type": "string", "format": "date-time" }, - "timeout": { - "type": "integer", - "minimum": 0 + "config": { + "type": "object", + "unevaluatedProperties": false, + "properties": { + "timeout": { + "type": "integer", + "minimum": 0 + } + } }, "duration": { "type": "object", diff --git a/src/helpers/report-builder.cjs b/src/helpers/report-builder.cjs index 0ec9218..c28c8ae 100644 --- a/src/helpers/report-builder.cjs +++ b/src/helpers/report-builder.cjs @@ -34,11 +34,13 @@ const reportMemberPriority = [ 'browser', 'framework', 'operatingSystem', + 'config', 'timeout', 'started', 'duration', 'total', 'final', + 'taxonomy', 'tool', 'experience', 'type', @@ -174,11 +176,12 @@ class ReportSummaryBuilder extends ReportBuilderBase { } class ReportDetailBuilder extends ReportBuilderBase { - constructor(reportConfiguration, codeowners) { + constructor(reportConfiguration, codeowners, { reportVersionLatest = false } = {}) { super(); this._reportConfiguration = reportConfiguration; this._codeowners = codeowners; + this._reportVersionLatest = reportVersionLatest; this._setProperty('retries', 0); } @@ -206,9 +209,19 @@ class ReportDetailBuilder extends ReportBuilderBase { const { type, tool, experience } = this._reportConfiguration.getTaxonomy(filePath); - this._setProperty('type', type, options); - this._setProperty('tool', tool, options); - this._setProperty('experience', experience, options); + if (this._reportVersionLatest) { + if (type != null) { + this._setNestedProperty('taxonomy', 'type', type, options); + } + + if (tool != null) { + this._setNestedProperty('taxonomy', 'tool', tool, options); + } + } else { + this._setProperty('type', type, options); + this._setProperty('tool', tool, options); + this._setProperty('experience', experience, options); + } if (this._codeowners) { const owners = this._codeowners.getOwner(filePath); @@ -286,7 +299,11 @@ class ReportDetailBuilder extends ReportBuilderBase { } setTimeout(timeout, options) { - this._setProperty('timeout', timeout, options); + if (this._reportVersionLatest) { + this._setNestedProperty('config', 'timeout', timeout, options); + } else { + this._setProperty('timeout', timeout, options); + } return this; } @@ -308,6 +325,7 @@ class ReportBuilder extends ReportBuilderBase { this._logger = logger; this._verbose = verbose; + this._reportVersionLatest = reportVersionLatest; this._reportConfiguration = new ReportConfiguration(reportConfigurationPath); if (reportWriter) { @@ -362,7 +380,9 @@ class ReportBuilder extends ReportBuilderBase { const { details } = this._data; if (!details.has(id)) { - details.set(id, new ReportDetailBuilder(this._reportConfiguration, this._codeowners)); + details.set(id, new ReportDetailBuilder(this._reportConfiguration, this._codeowners, { + reportVersionLatest: this._reportVersionLatest + })); } return details.get(id); @@ -390,8 +410,10 @@ class ReportBuilder extends ReportBuilderBase { } if (this._verbose) { - const { name, location, type, tool, experience } = detail; + const { name, location } = detail; const prefix = `Test '${name}' at '${location}' is missing`; + const type = this._reportVersionLatest ? detail.taxonomy?.type : detail.type; + const tool = this._reportVersionLatest ? detail.taxonomy?.tool : detail.tool; if (!type) { this._logger.warning(`${prefix} a 'type'`); @@ -401,7 +423,7 @@ class ReportBuilder extends ReportBuilderBase { this._logger.warning(`${prefix} a 'tool'`); } - if (!experience) { + if (!this._reportVersionLatest && !detail.experience) { this._logger.warning(`${prefix} an 'experience'`); } } diff --git a/test/integration/data/validation/test-report-mocha.js b/test/integration/data/validation/test-report-mocha.js index 9e2c873..e068fcd 100644 --- a/test/integration/data/validation/test-report-mocha.js +++ b/test/integration/data/validation/test-report-mocha.js @@ -11,91 +11,71 @@ export const testReportLatestPartial = { name: 'reporter 1 > passed', status: 'passed', location: { file: 'test/integration/data/tests/mocha/reporter-1.test.js' }, - timeout: 2000, - tool: 'Mocha 1 Test Reporting', - experience: 'Test Framework', - type: 'ui', + config: { timeout: 2000 }, + taxonomy: { tool: 'Mocha 1 Test Reporting', type: 'ui' }, retries: 0 }, { name: 'reporter 1 > skipped', status: 'skipped', location: { file: 'test/integration/data/tests/mocha/reporter-1.test.js' }, - timeout: 2000, - tool: 'Mocha 1 Test Reporting', - experience: 'Test Framework', - type: 'ui', + config: { timeout: 2000 }, + taxonomy: { tool: 'Mocha 1 Test Reporting', type: 'ui' }, retries: 0 }, { name: 'reporter 1 > flaky', status: 'passed', location: { file: 'test/integration/data/tests/mocha/reporter-1.test.js' }, - timeout: 2000, - tool: 'Mocha 1 Test Reporting', - experience: 'Test Framework', - type: 'ui', + config: { timeout: 2000 }, + taxonomy: { tool: 'Mocha 1 Test Reporting', type: 'ui' }, retries: 2 }, { name: 'reporter 1 > failed', status: 'failed', location: { file: 'test/integration/data/tests/mocha/reporter-1.test.js' }, - timeout: 2000, - tool: 'Mocha 1 Test Reporting', - experience: 'Test Framework', - type: 'ui', + config: { timeout: 2000 }, + taxonomy: { tool: 'Mocha 1 Test Reporting', type: 'ui' }, retries: 3 }, { name: 'reporter 2 > passed', status: 'passed', location: { file: 'test/integration/data/tests/mocha/reporter-2.test.js' }, - timeout: 2000, - tool: 'Test Reporting', - experience: 'Mocha 2 Test Framework', - type: 'integration', + config: { timeout: 2000 }, + taxonomy: { tool: 'Test Reporting', type: 'integration' }, retries: 0 }, { name: 'reporter 2 > skipped', status: 'skipped', location: { file: 'test/integration/data/tests/mocha/reporter-2.test.js' }, - timeout: 2000, - tool: 'Test Reporting', - experience: 'Mocha 2 Test Framework', - type: 'integration', + config: { timeout: 2000 }, + taxonomy: { tool: 'Test Reporting', type: 'integration' }, retries: 0 }, { name: 'reporter 2 > flaky', status: 'passed', location: { file: 'test/integration/data/tests/mocha/reporter-2.test.js' }, - timeout: 2000, - tool: 'Test Reporting', - experience: 'Mocha 2 Test Framework', - type: 'integration', + config: { timeout: 2000 }, + taxonomy: { tool: 'Test Reporting', type: 'integration' }, retries: 2 }, { name: 'reporter 2 > failed', status: 'failed', location: { file: 'test/integration/data/tests/mocha/reporter-2.test.js' }, - timeout: 2000, - tool: 'Test Reporting', - experience: 'Mocha 2 Test Framework', - type: 'integration', + config: { timeout: 2000 }, + taxonomy: { tool: 'Test Reporting', type: 'integration' }, retries: 3 }, { name: 'reporter 1 > special/characters "(\\n\\r\\t\\b\\f)"', status: 'passed', location: { file: 'test/integration/data/tests/mocha/reporter-1.test.js' }, - timeout: 2000, - tool: 'Mocha 1 Test Reporting', - experience: 'Test Framework', - type: 'ui', + config: { timeout: 2000 }, + taxonomy: { tool: 'Mocha 1 Test Reporting', type: 'ui' }, retries: 0 }, { name: 'reporter 2 > special/characters "(\\n\\r\\t\\b\\f)"', status: 'passed', location: { file: 'test/integration/data/tests/mocha/reporter-2.test.js' }, - timeout: 2000, - tool: 'Test Reporting', - experience: 'Mocha 2 Test Framework', - type: 'integration', + config: { timeout: 2000 }, + taxonomy: { tool: 'Test Reporting', type: 'integration' }, retries: 0 }] }; diff --git a/test/integration/data/validation/test-report-playwright.js b/test/integration/data/validation/test-report-playwright.js index fadd27f..4ce3c67 100644 --- a/test/integration/data/validation/test-report-playwright.js +++ b/test/integration/data/validation/test-report-playwright.js @@ -16,10 +16,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'chromium', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[chromium] > reporter 2 > skipped static, fixme', @@ -30,10 +28,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'chromium', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[chromium] > reporter 1 > passed', @@ -44,10 +40,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'chromium', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[chromium] > reporter 1 > skipped dynamic, fixme', @@ -58,10 +52,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'chromium', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[chromium] > reporter 1 > failed dynamic expected', @@ -72,10 +64,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'chromium', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[chromium] > reporter 1 > skipped static', @@ -86,10 +76,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'chromium', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[chromium] > reporter 2 > passed', @@ -100,10 +88,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'chromium', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[chromium] > reporter 1 > failed', @@ -114,10 +100,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'chromium', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 3 }, { name: '[chromium] > reporter 1 > skipped dynamic', @@ -128,10 +112,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'chromium', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[chromium] > reporter 1 > failed static expected, skipped dynamic, fixme', @@ -142,10 +124,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'chromium', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[chromium] > reporter 2 > skipped dynamic', @@ -156,10 +136,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'chromium', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[chromium] > reporter 2 > skipped static', @@ -170,10 +148,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'chromium', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[chromium] > reporter 1 > flaky', @@ -184,10 +160,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'chromium', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 2 }, { name: '[chromium] > reporter 1 > failed static expected, skipped dynamic', @@ -198,10 +172,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'chromium', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[chromium] > reporter 2 > skipped dynamic, fixme', @@ -212,10 +184,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'chromium', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[chromium] > reporter 2 > failed dynamic expected', @@ -226,10 +196,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'chromium', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[chromium] > reporter 2 > failed', @@ -240,10 +208,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'chromium', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 3 }, { name: '[chromium] > reporter 2 > failed static expected, skipped dynamic, fixme', @@ -254,10 +220,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'chromium', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[chromium] > reporter 2 > flaky', @@ -268,10 +232,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'chromium', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 2 }, { name: '[chromium] > reporter 2 > failed static expected, skipped dynamic', @@ -282,10 +244,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'chromium', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[firefox] > reporter 2 > skipped static, fixme', @@ -296,10 +256,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'firefox', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[firefox] > reporter 2 > passed', @@ -310,10 +268,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'firefox', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[firefox] > reporter 2 > skipped static', @@ -324,10 +280,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'firefox', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[firefox] > reporter 2 > skipped dynamic', @@ -338,10 +292,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'firefox', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[firefox] > reporter 2 > skipped dynamic, fixme', @@ -352,10 +304,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'firefox', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[firefox] > reporter 2 > failed dynamic expected', @@ -366,10 +316,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'firefox', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[firefox] > reporter 2 > flaky', @@ -380,10 +328,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'firefox', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 2 }, { name: '[firefox] > reporter 2 > failed static expected, skipped dynamic', @@ -394,10 +340,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'firefox', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[firefox] > reporter 2 > failed', @@ -408,10 +352,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'firefox', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 3 }, { name: '[firefox] > reporter 2 > failed static expected, skipped dynamic, fixme', @@ -422,10 +364,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'firefox', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[webkit] > reporter 1 > skipped static, fixme', @@ -436,10 +376,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'webkit', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[webkit] > reporter 1 > passed', @@ -450,10 +388,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'webkit', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[webkit] > reporter 1 > skipped static', @@ -464,10 +400,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'webkit', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[chromium] > reporter 1 > failed static expected', @@ -478,10 +412,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'chromium', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[webkit] > reporter 1 > skipped dynamic', @@ -492,10 +424,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'webkit', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[webkit] > reporter 1 > failed', @@ -506,10 +436,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'webkit', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 3 }, { name: '[chromium] > reporter 2 > failed static expected', @@ -520,10 +448,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'chromium', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[webkit] > reporter 1 > skipped dynamic, fixme', @@ -534,10 +460,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'webkit', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[webkit] > reporter 1 > failed static expected, skipped dynamic, fixme', @@ -548,10 +472,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'webkit', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[webkit] > reporter 2 > skipped static, fixme', @@ -562,10 +484,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'webkit', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[webkit] > reporter 1 > failed dynamic expected', @@ -576,10 +496,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'webkit', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[webkit] > reporter 1 > flaky', @@ -590,10 +508,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'webkit', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 2 }, { name: '[webkit] > reporter 2 > skipped dynamic', @@ -604,10 +520,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'webkit', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[webkit] > reporter 1 > failed static expected, skipped dynamic', @@ -618,10 +532,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'webkit', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[webkit] > reporter 2 > passed', @@ -632,10 +544,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'webkit', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[webkit] > reporter 2 > failed dynamic expected', @@ -646,10 +556,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'webkit', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[webkit] > reporter 2 > skipped static', @@ -660,10 +568,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'webkit', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[webkit] > reporter 2 > failed static expected, skipped dynamic, fixme', @@ -674,10 +580,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'webkit', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[webkit] > reporter 2 > failed static expected, skipped dynamic', @@ -688,10 +592,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'webkit', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[webkit] > reporter 2 > skipped dynamic, fixme', @@ -702,10 +604,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'webkit', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[webkit] > reporter 2 > failed', @@ -716,10 +616,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'webkit', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 3 }, { name: '[webkit] > reporter 2 > flaky', @@ -730,10 +628,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'webkit', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 2 }, { name: '[firefox] > reporter 2 > failed static expected', @@ -744,10 +640,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'firefox', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[webkit] > reporter 1 > failed static expected', @@ -758,10 +652,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'webkit', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[webkit] > reporter 2 > failed static expected', @@ -772,10 +664,8 @@ export const testReportLatestPartial = { column: 7 }, browser: 'webkit', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[chromium] > reporter 1 > special/characters "(\\n\\r\\t\\b\\f)"', @@ -786,10 +676,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'chromium', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[chromium] > reporter 2 > special/characters "(\\n\\r\\t\\b\\f)"', @@ -800,10 +688,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'chromium', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[firefox] > reporter 2 > special/characters "(\\n\\r\\t\\b\\f)"', @@ -814,10 +700,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'firefox', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }, { name: '[webkit] > reporter 1 > special/characters "(\\n\\r\\t\\b\\f)"', @@ -828,10 +712,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'webkit', - timeout: 30000, - tool: 'Playwright 1 Test Reporting', - experience: 'Playwright 1 Test Framework', - type: 'integration', + config: { timeout: 30000 }, + taxonomy: { tool: 'Playwright 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[webkit] > reporter 2 > special/characters "(\\n\\r\\t\\b\\f)"', @@ -842,10 +724,8 @@ export const testReportLatestPartial = { column: 2 }, browser: 'webkit', - timeout: 30000, - tool: 'Test Reporting', - experience: 'Playwright 2 Test Framework', - type: 'visual diff', + config: { timeout: 30000 }, + taxonomy: { tool: 'Test Reporting', type: 'visual diff' }, retries: 0 }] }; diff --git a/test/integration/data/validation/test-report-web-test-runner.js b/test/integration/data/validation/test-report-web-test-runner.js index 62ee40b..65fe8e8 100644 --- a/test/integration/data/validation/test-report-web-test-runner.js +++ b/test/integration/data/validation/test-report-web-test-runner.js @@ -12,160 +12,128 @@ export const testReportLatestPartial = { status: 'passed', location: { file: 'test/integration/data/tests/web-test-runner/reporter-1.test.js' }, browser: 'chrome', - timeout: 120000, - tool: 'WebTestRunner 1 Test Reporting', - experience: 'WebTestRunner 1 Test Framework', - type: 'integration', + config: { timeout: 120000 }, + taxonomy: { tool: 'WebTestRunner 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: 'reporter 1 > skipped', status: 'skipped', location: { file: 'test/integration/data/tests/web-test-runner/reporter-1.test.js' }, browser: 'chrome', - timeout: 120000, - tool: 'WebTestRunner 1 Test Reporting', - experience: 'WebTestRunner 1 Test Framework', - type: 'integration', + config: { timeout: 120000 }, + taxonomy: { tool: 'WebTestRunner 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: 'reporter 1 > failed', status: 'failed', location: { file: 'test/integration/data/tests/web-test-runner/reporter-1.test.js' }, browser: 'chrome', - timeout: 120000, - tool: 'WebTestRunner 1 Test Reporting', - experience: 'WebTestRunner 1 Test Framework', - type: 'integration', + config: { timeout: 120000 }, + taxonomy: { tool: 'WebTestRunner 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[group 1] > reporter 2 > passed', status: 'passed', location: { file: 'test/integration/data/tests/web-test-runner/reporter-2.test.js' }, browser: 'chromium', - timeout: 120000, - tool: 'Test Reporting', - experience: 'WebTestRunner 2 Test Framework', - type: 'accessibility', + config: { timeout: 120000 }, + taxonomy: { tool: 'Test Reporting', type: 'accessibility' }, retries: 0 }, { name: '[group 1] > reporter 2 > skipped', status: 'skipped', location: { file: 'test/integration/data/tests/web-test-runner/reporter-2.test.js' }, browser: 'chromium', - timeout: 120000, - tool: 'Test Reporting', - experience: 'WebTestRunner 2 Test Framework', - type: 'accessibility', + config: { timeout: 120000 }, + taxonomy: { tool: 'Test Reporting', type: 'accessibility' }, retries: 0 }, { name: '[group 1] > reporter 2 > failed', status: 'failed', location: { file: 'test/integration/data/tests/web-test-runner/reporter-2.test.js' }, browser: 'chromium', - timeout: 120000, - tool: 'Test Reporting', - experience: 'WebTestRunner 2 Test Framework', - type: 'accessibility', + config: { timeout: 120000 }, + taxonomy: { tool: 'Test Reporting', type: 'accessibility' }, retries: 0 }, { name: '[group 1] > reporter 2 > passed', status: 'passed', location: { file: 'test/integration/data/tests/web-test-runner/reporter-2.test.js' }, browser: 'firefox', - timeout: 120000, - tool: 'Test Reporting', - experience: 'WebTestRunner 2 Test Framework', - type: 'accessibility', + config: { timeout: 120000 }, + taxonomy: { tool: 'Test Reporting', type: 'accessibility' }, retries: 0 }, { name: '[group 1] > reporter 2 > skipped', status: 'skipped', location: { file: 'test/integration/data/tests/web-test-runner/reporter-2.test.js' }, browser: 'firefox', - timeout: 120000, - tool: 'Test Reporting', - experience: 'WebTestRunner 2 Test Framework', - type: 'accessibility', + config: { timeout: 120000 }, + taxonomy: { tool: 'Test Reporting', type: 'accessibility' }, retries: 0 }, { name: '[group 1] > reporter 2 > failed', status: 'failed', location: { file: 'test/integration/data/tests/web-test-runner/reporter-2.test.js' }, browser: 'firefox', - timeout: 120000, - tool: 'Test Reporting', - experience: 'WebTestRunner 2 Test Framework', - type: 'accessibility', + config: { timeout: 120000 }, + taxonomy: { tool: 'Test Reporting', type: 'accessibility' }, retries: 0 }, { name: '[group 2] > reporter 1 > passed', status: 'passed', location: { file: 'test/integration/data/tests/web-test-runner/reporter-1.test.js' }, browser: 'webkit', - timeout: 120000, - tool: 'WebTestRunner 1 Test Reporting', - experience: 'WebTestRunner 1 Test Framework', - type: 'integration', + config: { timeout: 120000 }, + taxonomy: { tool: 'WebTestRunner 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[group 2] > reporter 1 > skipped', status: 'skipped', location: { file: 'test/integration/data/tests/web-test-runner/reporter-1.test.js' }, browser: 'webkit', - timeout: 120000, - tool: 'WebTestRunner 1 Test Reporting', - experience: 'WebTestRunner 1 Test Framework', - type: 'integration', + config: { timeout: 120000 }, + taxonomy: { tool: 'WebTestRunner 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[group 2] > reporter 1 > failed', status: 'failed', location: { file: 'test/integration/data/tests/web-test-runner/reporter-1.test.js' }, browser: 'webkit', - timeout: 120000, - tool: 'WebTestRunner 1 Test Reporting', - experience: 'WebTestRunner 1 Test Framework', - type: 'integration', + config: { timeout: 120000 }, + taxonomy: { tool: 'WebTestRunner 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: 'reporter 1 > special/characters "(\\n\\r\\t\\b\\f)"', status: 'passed', location: { file: 'test/integration/data/tests/web-test-runner/reporter-1.test.js' }, browser: 'chrome', - timeout: 120000, - tool: 'WebTestRunner 1 Test Reporting', - experience: 'WebTestRunner 1 Test Framework', - type: 'integration', + config: { timeout: 120000 }, + taxonomy: { tool: 'WebTestRunner 1 Test Reporting', type: 'integration' }, retries: 0 }, { name: '[group 1] > reporter 2 > special/characters "(\\n\\r\\t\\b\\f)"', status: 'passed', location: { file: 'test/integration/data/tests/web-test-runner/reporter-2.test.js' }, browser: 'chromium', - timeout: 120000, - tool: 'Test Reporting', - experience: 'WebTestRunner 2 Test Framework', - type: 'accessibility', + config: { timeout: 120000 }, + taxonomy: { tool: 'Test Reporting', type: 'accessibility' }, retries: 0 }, { name: '[group 1] > reporter 2 > special/characters "(\\n\\r\\t\\b\\f)"', status: 'passed', location: { file: 'test/integration/data/tests/web-test-runner/reporter-2.test.js' }, browser: 'firefox', - timeout: 120000, - tool: 'Test Reporting', - experience: 'WebTestRunner 2 Test Framework', - type: 'accessibility', + config: { timeout: 120000 }, + taxonomy: { tool: 'Test Reporting', type: 'accessibility' }, retries: 0 }, { name: '[group 2] > reporter 1 > special/characters "(\\n\\r\\t\\b\\f)"', status: 'passed', location: { file: 'test/integration/data/tests/web-test-runner/reporter-1.test.js' }, browser: 'webkit', - timeout: 120000, - tool: 'WebTestRunner 1 Test Reporting', - experience: 'WebTestRunner 1 Test Framework', - type: 'integration', + config: { timeout: 120000 }, + taxonomy: { tool: 'WebTestRunner 1 Test Reporting', type: 'integration' }, retries: 0 }] }; diff --git a/test/integration/data/validation/test-report-webdriverio.js b/test/integration/data/validation/test-report-webdriverio.js index 52ca96f..e3a9fc5 100644 --- a/test/integration/data/validation/test-report-webdriverio.js +++ b/test/integration/data/validation/test-report-webdriverio.js @@ -15,137 +15,103 @@ export const testReportLatestPartial = { name: `[${platform}] > reporter 1 > passed`, status: 'passed', location: { file: 'test/integration/data/tests/webdriverio/reporter-1.test.js' }, - tool: 'WebdriverIO 1 Test Reporting', - experience: 'Test Framework', - type: 'ui', + taxonomy: { tool: 'WebdriverIO 1 Test Reporting', type: 'ui' }, retries: 0 }, { name: `[${platform}] > reporter 1 > skipped`, status: 'skipped', location: { file: 'test/integration/data/tests/webdriverio/reporter-1.test.js' }, - tool: 'WebdriverIO 1 Test Reporting', - experience: 'Test Framework', - type: 'ui', + taxonomy: { tool: 'WebdriverIO 1 Test Reporting', type: 'ui' }, retries: 0 }, { name: `[${platform}] > reporter 1 > flaky`, status: 'passed', location: { file: 'test/integration/data/tests/webdriverio/reporter-1.test.js' }, - tool: 'WebdriverIO 1 Test Reporting', - experience: 'Test Framework', - type: 'ui', + taxonomy: { tool: 'WebdriverIO 1 Test Reporting', type: 'ui' }, retries: 2 }, { name: `[${platform}] > reporter 1 > failed`, status: 'failed', location: { file: 'test/integration/data/tests/webdriverio/reporter-1.test.js' }, - tool: 'WebdriverIO 1 Test Reporting', - experience: 'Test Framework', - type: 'ui', + taxonomy: { tool: 'WebdriverIO 1 Test Reporting', type: 'ui' }, retries: 3 }, { name: `[${platform}] > reporter 1 > special/characters "(\\n\\r\\t\\b\\f)"`, status: 'passed', location: { file: 'test/integration/data/tests/webdriverio/reporter-1.test.js' }, - tool: 'WebdriverIO 1 Test Reporting', - experience: 'Test Framework', - type: 'ui', + taxonomy: { tool: 'WebdriverIO 1 Test Reporting', type: 'ui' }, retries: 0 }, { name: `[${platform}] > reporter 2 > passed`, status: 'passed', location: { file: 'test/integration/data/tests/webdriverio/reporter-2.test.js' }, - tool: 'Test Reporting', - experience: 'WebdriverIO 2 Test Framework', - type: 'integration', + taxonomy: { tool: 'Test Reporting', type: 'integration' }, retries: 0 }, { name: `[${platform}] > reporter 2 > skipped`, status: 'skipped', location: { file: 'test/integration/data/tests/webdriverio/reporter-2.test.js' }, - tool: 'Test Reporting', - experience: 'WebdriverIO 2 Test Framework', - type: 'integration', + taxonomy: { tool: 'Test Reporting', type: 'integration' }, retries: 0 }, { name: `[${platform}] > reporter 2 > flaky`, status: 'passed', location: { file: 'test/integration/data/tests/webdriverio/reporter-2.test.js' }, - tool: 'Test Reporting', - experience: 'WebdriverIO 2 Test Framework', - type: 'integration', + taxonomy: { tool: 'Test Reporting', type: 'integration' }, retries: 2 }, { name: `[${platform}] > reporter 2 > special/characters "(\\n\\r\\t\\b\\f)"`, status: 'passed', location: { file: 'test/integration/data/tests/webdriverio/reporter-2.test.js' }, - tool: 'Test Reporting', - experience: 'WebdriverIO 2 Test Framework', - type: 'integration', + taxonomy: { tool: 'Test Reporting', type: 'integration' }, retries: 0 }, { name: `[${platform}] > reporter 2 > passed 2`, status: 'passed', location: { file: 'test/integration/data/tests/webdriverio/reporter-2.test.js' }, - tool: 'Test Reporting', - experience: 'WebdriverIO 2 Test Framework', - type: 'integration', + taxonomy: { tool: 'Test Reporting', type: 'integration' }, retries: 0 }, { name: `[${platform}] > reporter 2 > passed 3`, status: 'passed', location: { file: 'test/integration/data/tests/webdriverio/reporter-2.test.js' }, - tool: 'Test Reporting', - experience: 'WebdriverIO 2 Test Framework', - type: 'integration', + taxonomy: { tool: 'Test Reporting', type: 'integration' }, retries: 0 }, { name: `[${platform}] > reporter 2 > passed 4`, status: 'passed', location: { file: 'test/integration/data/tests/webdriverio/reporter-2.test.js' }, - tool: 'Test Reporting', - experience: 'WebdriverIO 2 Test Framework', - type: 'integration', + taxonomy: { tool: 'Test Reporting', type: 'integration' }, retries: 0 }, { name: `[${platform}] > reporter 2 > passed with timeout`, status: 'passed', location: { file: 'test/integration/data/tests/webdriverio/reporter-2.test.js' }, - tool: 'Test Reporting', - experience: 'WebdriverIO 2 Test Framework', - type: 'integration', + taxonomy: { tool: 'Test Reporting', type: 'integration' }, retries: 0 }, { name: `[${platform}] > reporter 3 > passed 1`, status: 'passed', location: { file: 'test/integration/data/tests/webdriverio/reporter-3.test.js' }, - tool: 'Test Reporting', - experience: 'Test Framework', - type: 'integration', + taxonomy: { tool: 'Test Reporting', type: 'integration' }, retries: 0 }, { name: `[${platform}] > reporter 3 > passed 2`, status: 'passed', location: { file: 'test/integration/data/tests/webdriverio/reporter-3.test.js' }, - tool: 'Test Reporting', - experience: 'Test Framework', - type: 'integration', + taxonomy: { tool: 'Test Reporting', type: 'integration' }, retries: 0 }, { name: `[${platform}] > reporter 3 > passed 3`, status: 'passed', location: { file: 'test/integration/data/tests/webdriverio/reporter-3.test.js' }, - tool: 'Test Reporting', - experience: 'Test Framework', - type: 'integration', + taxonomy: { tool: 'Test Reporting', type: 'integration' }, retries: 0 }, { name: `[${platform}] > reporter 3 > passed 4`, status: 'passed', location: { file: 'test/integration/data/tests/webdriverio/reporter-3.test.js' }, - tool: 'Test Reporting', - experience: 'Test Framework', - type: 'integration', + taxonomy: { tool: 'Test Reporting', type: 'integration' }, retries: 0 }] };