diff --git a/integration-tests/playwright/playwright.spec.js b/integration-tests/playwright/playwright.spec.js index 03ff3accd0d..ee3a05182ad 100644 --- a/integration-tests/playwright/playwright.spec.js +++ b/integration-tests/playwright/playwright.spec.js @@ -17,7 +17,8 @@ const { TEST_SOURCE_START, TEST_TYPE, TEST_SOURCE_FILE, - TEST_CONFIGURATION_BROWSER_NAME, + TEST_PARAMETERS, + TEST_BROWSER_NAME, TEST_IS_NEW, TEST_IS_RETRY, TEST_EARLY_FLAKE_ENABLED, @@ -153,7 +154,12 @@ versions.forEach((version) => { assert.propertyVal(testEvent.content.meta, 'test.customtag', 'customvalue') assert.propertyVal(testEvent.content.meta, 'test.customtag2', 'customvalue2') // Adds the browser used - assert.propertyVal(testEvent.content.meta, TEST_CONFIGURATION_BROWSER_NAME, 'chromium') + assert.propertyVal(testEvent.content.meta, TEST_BROWSER_NAME, 'chromium') + assert.propertyVal( + testEvent.content.meta, + TEST_PARAMETERS, + JSON.stringify({ arguments: { browser: 'chromium' }, metadata: {} }) + ) assert.exists(testEvent.content.metrics[DD_HOST_CPU_COUNT]) }) diff --git a/packages/datadog-plugin-playwright/src/index.js b/packages/datadog-plugin-playwright/src/index.js index 56601abf051..5573984ef1b 100644 --- a/packages/datadog-plugin-playwright/src/index.js +++ b/packages/datadog-plugin-playwright/src/index.js @@ -11,12 +11,13 @@ const { TEST_SOURCE_START, TEST_CODE_OWNERS, TEST_SOURCE_FILE, - TEST_CONFIGURATION_BROWSER_NAME, + TEST_PARAMETERS, TEST_IS_NEW, TEST_IS_RETRY, TEST_EARLY_FLAKE_ENABLED, TELEMETRY_TEST_SESSION, - TEST_RETRY_REASON + TEST_RETRY_REASON, + TEST_BROWSER_NAME } = require('../../dd-trace/src/plugins/util/test') const { RESOURCE_NAME } = require('../../../ext/tags') const { COMPONENT } = require('../../dd-trace/src/constants') @@ -202,7 +203,9 @@ class PlaywrightPlugin extends CiPlugin { extraTags[TEST_SOURCE_FILE] = testSourceFile || testSuite } if (browserName) { - extraTags[TEST_CONFIGURATION_BROWSER_NAME] = browserName + // Added as parameter too because it should affect the test fingerprint + extraTags[TEST_PARAMETERS] = JSON.stringify({ arguments: { browser: browserName }, metadata: {} }) + extraTags[TEST_BROWSER_NAME] = browserName } return super.startTestSpan(testName, testSuite, testSuiteSpan, extraTags) diff --git a/packages/dd-trace/src/plugins/util/test.js b/packages/dd-trace/src/plugins/util/test.js index 407676d5c57..285a03cc709 100644 --- a/packages/dd-trace/src/plugins/util/test.js +++ b/packages/dd-trace/src/plugins/util/test.js @@ -52,8 +52,6 @@ const TEST_MODULE_ID = 'test_module_id' const TEST_SUITE_ID = 'test_suite_id' const TEST_TOOLCHAIN = 'test.toolchain' const TEST_SKIPPED_BY_ITR = 'test.skipped_by_itr' -// Browser used in browser test. Namespaced by test.configuration because it affects the fingerprint -const TEST_CONFIGURATION_BROWSER_NAME = 'test.configuration.browser_name' // Early flake detection const TEST_IS_NEW = 'test.is_new' const TEST_IS_RETRY = 'test.is_retry' @@ -143,7 +141,6 @@ module.exports = { MOCHA_WORKER_TRACE_PAYLOAD_CODE, TEST_SOURCE_START, TEST_SKIPPED_BY_ITR, - TEST_CONFIGURATION_BROWSER_NAME, TEST_IS_NEW, TEST_IS_RETRY, TEST_EARLY_FLAKE_ENABLED,