diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/CiVisibilitySystem.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/CiVisibilitySystem.java index 495b83210ec..ac467e6500a 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/CiVisibilitySystem.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/CiVisibilitySystem.java @@ -158,7 +158,7 @@ private TestEventsHandlerFactory( services, repoServices, coverageServices, executionSettings); } else { sessionFactory = - headlessTestFrameworkEssionFactory( + headlessTestFrameworkSessionFactory( services, repoServices, coverageServices, executionSettings); } } @@ -259,7 +259,7 @@ private static TestFrameworkSession.Factory childTestFrameworkSessionFactory( }; } - private static TestFrameworkSession.Factory headlessTestFrameworkEssionFactory( + private static TestFrameworkSession.Factory headlessTestFrameworkSessionFactory( CiVisibilityServices services, CiVisibilityRepoServices repoServices, CiVisibilityCoverageServices.Child coverageServices, diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/CiVisibilitySettings.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/CiVisibilitySettings.java index 49c8b79715c..f278cb43c73 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/CiVisibilitySettings.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/CiVisibilitySettings.java @@ -9,7 +9,15 @@ public class CiVisibilitySettings { public static final CiVisibilitySettings DEFAULT = new CiVisibilitySettings( - false, false, false, false, false, false, false, EarlyFlakeDetectionSettings.DEFAULT); + false, + false, + false, + false, + false, + false, + false, + EarlyFlakeDetectionSettings.DEFAULT, + TestManagementSettings.DEFAULT); private final boolean itrEnabled; private final boolean codeCoverage; @@ -19,6 +27,7 @@ public class CiVisibilitySettings { private final boolean impactedTestsDetectionEnabled; private final boolean knownTestsEnabled; private final EarlyFlakeDetectionSettings earlyFlakeDetectionSettings; + private final TestManagementSettings testManagementSettings; CiVisibilitySettings( boolean itrEnabled, @@ -28,7 +37,8 @@ public class CiVisibilitySettings { boolean flakyTestRetriesEnabled, boolean impactedTestsDetectionEnabled, boolean knownTestsEnabled, - EarlyFlakeDetectionSettings earlyFlakeDetectionSettings) { + EarlyFlakeDetectionSettings earlyFlakeDetectionSettings, + TestManagementSettings testManagementSettings) { this.itrEnabled = itrEnabled; this.codeCoverage = codeCoverage; this.testsSkipping = testsSkipping; @@ -37,6 +47,7 @@ public class CiVisibilitySettings { this.impactedTestsDetectionEnabled = impactedTestsDetectionEnabled; this.knownTestsEnabled = knownTestsEnabled; this.earlyFlakeDetectionSettings = earlyFlakeDetectionSettings; + this.testManagementSettings = testManagementSettings; } public boolean isItrEnabled() { @@ -71,6 +82,10 @@ public EarlyFlakeDetectionSettings getEarlyFlakeDetectionSettings() { return earlyFlakeDetectionSettings; } + public TestManagementSettings getTestManagementSettings() { + return testManagementSettings; + } + @Override public boolean equals(Object o) { if (this == o) { @@ -87,7 +102,8 @@ public boolean equals(Object o) { && flakyTestRetriesEnabled == that.flakyTestRetriesEnabled && impactedTestsDetectionEnabled == that.impactedTestsDetectionEnabled && knownTestsEnabled == that.knownTestsEnabled - && Objects.equals(earlyFlakeDetectionSettings, that.earlyFlakeDetectionSettings); + && Objects.equals(earlyFlakeDetectionSettings, that.earlyFlakeDetectionSettings) + && Objects.equals(testManagementSettings, that.testManagementSettings); } @Override @@ -100,7 +116,8 @@ public int hashCode() { flakyTestRetriesEnabled, impactedTestsDetectionEnabled, knownTestsEnabled, - earlyFlakeDetectionSettings); + earlyFlakeDetectionSettings, + testManagementSettings); } public interface Factory { @@ -126,7 +143,9 @@ public CiVisibilitySettings fromJson(Map json) { getBoolean(json, "impacted_tests_enabled", false), getBoolean(json, "known_tests_enabled", false), EarlyFlakeDetectionSettingsJsonAdapter.INSTANCE.fromJson( - (Map) json.get("early_flake_detection"))); + (Map) json.get("early_flake_detection")), + TestManagementSettingsJsonAdapter.INSTANCE.fromJson( + (Map) json.get("test_management"))); } private static boolean getBoolean( diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/ConfigurationApiImpl.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/ConfigurationApiImpl.java index 3e423e62672..c2330e584fd 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/ConfigurationApiImpl.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/ConfigurationApiImpl.java @@ -21,6 +21,7 @@ import datadog.trace.api.civisibility.telemetry.tag.ItrSkipEnabled; import datadog.trace.api.civisibility.telemetry.tag.KnownTestsEnabled; import datadog.trace.api.civisibility.telemetry.tag.RequireGit; +import datadog.trace.api.civisibility.telemetry.tag.TestManagementEnabled; import datadog.trace.civisibility.communication.TelemetryListener; import datadog.trace.util.RandomUtils; import java.io.File; @@ -146,6 +147,7 @@ public CiVisibilitySettings getSettings(TracerEnvironment tracerEnvironment) thr settings.isFlakyTestRetriesEnabled() ? FlakyTestRetriesEnabled.TRUE : null, settings.isKnownTestsEnabled() ? KnownTestsEnabled.TRUE : null, settings.isImpactedTestsDetectionEnabled() ? ImpactedTestsDetectionEnabled.TRUE : null, + settings.getTestManagementSettings().isEnabled() ? TestManagementEnabled.TRUE : null, settings.isGitUploadRequired() ? RequireGit.TRUE : null); return settings; diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/ExecutionSettings.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/ExecutionSettings.java index 4d0ed23a2f8..70a9003b2a3 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/ExecutionSettings.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/ExecutionSettings.java @@ -25,6 +25,7 @@ public class ExecutionSettings { false, false, EarlyFlakeDetectionSettings.DEFAULT, + TestManagementSettings.DEFAULT, null, Collections.emptyMap(), Collections.emptyMap(), @@ -39,6 +40,7 @@ public class ExecutionSettings { private final boolean flakyTestRetriesEnabled; private final boolean impactedTestsDetectionEnabled; @Nonnull private final EarlyFlakeDetectionSettings earlyFlakeDetectionSettings; + @Nonnull private final TestManagementSettings testManagementSettings; @Nullable private final String itrCorrelationId; @Nonnull private final Map skippableTests; @Nonnull private final Map skippableTestsCoverage; @@ -54,6 +56,7 @@ public ExecutionSettings( boolean flakyTestRetriesEnabled, boolean impactedTestsDetectionEnabled, @Nonnull EarlyFlakeDetectionSettings earlyFlakeDetectionSettings, + @Nonnull TestManagementSettings testManagementSettings, @Nullable String itrCorrelationId, @Nonnull Map skippableTests, @Nonnull Map skippableTestsCoverage, @@ -67,6 +70,7 @@ public ExecutionSettings( this.flakyTestRetriesEnabled = flakyTestRetriesEnabled; this.impactedTestsDetectionEnabled = impactedTestsDetectionEnabled; this.earlyFlakeDetectionSettings = earlyFlakeDetectionSettings; + this.testManagementSettings = testManagementSettings; this.itrCorrelationId = itrCorrelationId; this.skippableTests = skippableTests; this.skippableTestsCoverage = skippableTestsCoverage; @@ -105,6 +109,11 @@ public EarlyFlakeDetectionSettings getEarlyFlakeDetectionSettings() { return earlyFlakeDetectionSettings; } + @Nonnull + public TestManagementSettings getTestManagementSettings() { + return testManagementSettings; + } + @Nullable public String getItrCorrelationId() { return itrCorrelationId; @@ -162,6 +171,7 @@ public boolean equals(Object o) { && codeCoverageEnabled == that.codeCoverageEnabled && testSkippingEnabled == that.testSkippingEnabled && Objects.equals(earlyFlakeDetectionSettings, that.earlyFlakeDetectionSettings) + && Objects.equals(testManagementSettings, that.testManagementSettings) && Objects.equals(itrCorrelationId, that.itrCorrelationId) && Objects.equals(skippableTests, that.skippableTests) && Objects.equals(skippableTestsCoverage, that.skippableTestsCoverage) @@ -178,6 +188,7 @@ public int hashCode() { codeCoverageEnabled, testSkippingEnabled, earlyFlakeDetectionSettings, + testManagementSettings, itrCorrelationId, skippableTests, skippableTestsCoverage, @@ -211,6 +222,8 @@ public static ByteBuffer serialize(ExecutionSettings settings) { EarlyFlakeDetectionSettingsSerializer.serialize(s, settings.earlyFlakeDetectionSettings); + TestManagementSettingsSerializer.serialize(s, settings.testManagementSettings); + s.write(settings.itrCorrelationId); s.write( settings.skippableTests, @@ -238,6 +251,9 @@ public static ExecutionSettings deserialize(ByteBuffer buffer) { EarlyFlakeDetectionSettings earlyFlakeDetectionSettings = EarlyFlakeDetectionSettingsSerializer.deserialize(buffer); + TestManagementSettings testManagementSettings = + TestManagementSettingsSerializer.deserialize(buffer); + String itrCorrelationId = Serializer.readString(buffer); Map skippableTests = @@ -262,6 +278,7 @@ public static ExecutionSettings deserialize(ByteBuffer buffer) { flakyTestRetriesEnabled, impactedTestsDetectionEnabled, earlyFlakeDetectionSettings, + testManagementSettings, itrCorrelationId, skippableTests, skippableTestsCoverage, diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/ExecutionSettingsFactoryImpl.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/ExecutionSettingsFactoryImpl.java index d6604544ee1..916661efa13 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/ExecutionSettingsFactoryImpl.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/ExecutionSettingsFactoryImpl.java @@ -178,6 +178,8 @@ private Map doCreate( CiVisibilitySettings::isKnownTestsEnabled, Config::isCiVisibilityKnownTestsRequestEnabled); + TestManagementSettings testManagementSettings = getTestManagementSettings(settings); + LOGGER.info( "CI Visibility settings ({}, {}/{}/{}):\n" + "Intelligent Test Runner - {},\n" @@ -186,7 +188,8 @@ private Map doCreate( + "Early flakiness detection - {},\n" + "Impacted tests detection - {},\n" + "Known tests marking - {},\n" - + "Auto test retries - {}", + + "Auto test retries - {},\n" + + "Test Management - {}", repositoryRoot, tracerEnvironment.getConfigurations().getRuntimeName(), tracerEnvironment.getConfigurations().getRuntimeVersion(), @@ -197,7 +200,8 @@ private Map doCreate( earlyFlakeDetectionEnabled, impactedTestsEnabled, knownTestsRequest, - flakyTestRetriesEnabled); + flakyTestRetriesEnabled, + testManagementSettings.isEnabled()); Future skippableTestsFuture = executor.submit(() -> getSkippableTests(tracerEnvironment, itrEnabled)); @@ -228,6 +232,7 @@ private Map doCreate( earlyFlakeDetectionEnabled ? settings.getEarlyFlakeDetectionSettings() : EarlyFlakeDetectionSettings.DEFAULT, + testManagementSettings, skippableTests.getCorrelationId(), skippableTests .getIdentifiersByModule() @@ -270,6 +275,26 @@ private boolean isFeatureEnabled( return remoteSetting.apply(ciVisibilitySettings) && killSwitch.apply(config); } + @Nonnull + private TestManagementSettings getTestManagementSettings(CiVisibilitySettings settings) { + boolean testManagementEnabled = + isFeatureEnabled( + settings, + s -> s.getTestManagementSettings().isEnabled(), + Config::isCiVisibilityTestManagementEnabled); + + if (!testManagementEnabled) { + return TestManagementSettings.DEFAULT; + } + + Integer retries = config.getCiVisibilityTestManagementAttemptToFixRetries(); + if (retries != null) { + return new TestManagementSettings(true, retries); + } + + return settings.getTestManagementSettings(); + } + @Nonnull private SkippableTests getSkippableTests( TracerEnvironment tracerEnvironment, boolean itrEnabled) { @@ -302,7 +327,6 @@ private SkippableTests getSkippableTests( Thread.currentThread().interrupt(); LOGGER.error("Interrupted while waiting for git data upload", e); return SkippableTests.EMPTY; - } catch (Exception e) { LOGGER.error("Could not obtain list of skippable tests, will proceed without skipping", e); return SkippableTests.EMPTY; diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/TestManagementSettings.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/TestManagementSettings.java new file mode 100644 index 00000000000..64e2ddc4e00 --- /dev/null +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/TestManagementSettings.java @@ -0,0 +1,42 @@ +package datadog.trace.civisibility.config; + +import java.util.Objects; + +public class TestManagementSettings { + + public static final TestManagementSettings DEFAULT = new TestManagementSettings(false, -1); + + private final boolean enabled; + private final int attemptToFixRetries; + + public TestManagementSettings(boolean enabled, int attemptToFixRetries) { + this.enabled = enabled; + this.attemptToFixRetries = attemptToFixRetries; + } + + public boolean isEnabled() { + return enabled; + } + + public int getAttemptToFixRetries() { + return attemptToFixRetries; + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + + TestManagementSettings that = (TestManagementSettings) o; + return enabled == that.enabled && attemptToFixRetries == that.attemptToFixRetries; + } + + @Override + public int hashCode() { + return Objects.hash(enabled, attemptToFixRetries); + } +} diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/TestManagementSettingsJsonAdapter.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/TestManagementSettingsJsonAdapter.java new file mode 100644 index 00000000000..6b20eda6275 --- /dev/null +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/TestManagementSettingsJsonAdapter.java @@ -0,0 +1,23 @@ +package datadog.trace.civisibility.config; + +import com.squareup.moshi.FromJson; +import java.util.Map; + +public class TestManagementSettingsJsonAdapter { + public static final TestManagementSettingsJsonAdapter INSTANCE = + new TestManagementSettingsJsonAdapter(); + + @FromJson + public TestManagementSettings fromJson(Map json) { + if (json == null) { + return TestManagementSettings.DEFAULT; + } + + Boolean enabled = (Boolean) json.get("enabled"); + Double attemptToFixRetries = (Double) json.get("attempt_to_fix_retries"); + + return new TestManagementSettings( + enabled != null ? enabled : false, + attemptToFixRetries != null ? attemptToFixRetries.intValue() : -1); + } +} diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/TestManagementSettingsSerializer.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/TestManagementSettingsSerializer.java new file mode 100644 index 00000000000..7e2c5c7be71 --- /dev/null +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/config/TestManagementSettingsSerializer.java @@ -0,0 +1,25 @@ +package datadog.trace.civisibility.config; + +import datadog.trace.civisibility.ipc.serialization.Serializer; +import java.nio.ByteBuffer; + +public class TestManagementSettingsSerializer { + public static void serialize(Serializer serializer, TestManagementSettings settings) { + if (!settings.isEnabled()) { + serializer.write((byte) 0); + return; + } + serializer.write((byte) 1); + serializer.write(settings.getAttemptToFixRetries()); + } + + public static TestManagementSettings deserialize(ByteBuffer buf) { + boolean enabled = Serializer.readByte(buf) != 0; + if (!enabled) { + return TestManagementSettings.DEFAULT; + } + + int attemptToFixRetries = Serializer.readInt(buf); + return new TestManagementSettings(enabled, attemptToFixRetries); + } +} diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/buildsystem/BuildSystemModuleImpl.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/buildsystem/BuildSystemModuleImpl.java index 4dd03dfabce..4ae85422ace 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/buildsystem/BuildSystemModuleImpl.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/buildsystem/BuildSystemModuleImpl.java @@ -46,7 +46,6 @@ public class BuildSystemModuleImpl extends AbstractTestModule implements BuildSy private final LongAdder testsSkipped = new LongAdder(); - private volatile boolean codeCoverageEnabled; private volatile boolean testSkippingEnabled; public BuildSystemModuleImpl( @@ -168,6 +167,10 @@ private Map getPropertiesPropagatedToChildProcess( CiVisibilityConfig.CIVISIBILITY_EARLY_FLAKE_DETECTION_ENABLED), Boolean.toString(executionSettings.getEarlyFlakeDetectionSettings().isEnabled())); + propagatedSystemProperties.put( + Strings.propertyNameToSystemPropertyName(CiVisibilityConfig.TEST_MANAGEMENT_ENABLED), + Boolean.toString(executionSettings.getTestManagementSettings().isEnabled())); + // explicitly disable build instrumentation in child processes, // because some projects run "embedded" Maven/Gradle builds as part of their integration tests, // and we don't want to show those as if they were regular build executions @@ -252,7 +255,7 @@ public BuildModuleSettings getSettings() { */ private SignalResponse onModuleExecutionResultReceived(ModuleExecutionResult result) { if (result.isCoverageEnabled()) { - codeCoverageEnabled = true; + setTag(Tags.TEST_CODE_COVERAGE_ENABLED, true); } if (result.isTestSkippingEnabled()) { testSkippingEnabled = true; @@ -264,6 +267,10 @@ private SignalResponse onModuleExecutionResultReceived(ModuleExecutionResult res } } + if (result.isTestManagementEnabled()) { + setTag(Tags.TEST_TEST_MANAGEMENT_ENABLED, true); + } + testsSkipped.add(result.getTestsSkippedTotal()); SpanUtils.mergeTestFrameworks(span, result.getTestFrameworks()); @@ -273,10 +280,6 @@ private SignalResponse onModuleExecutionResultReceived(ModuleExecutionResult res @Override public void end(@Nullable Long endTime) { - if (codeCoverageEnabled) { - setTag(Tags.TEST_CODE_COVERAGE_ENABLED, true); - } - if (testSkippingEnabled) { setTag(Tags.TEST_ITR_TESTS_SKIPPING_ENABLED, true); setTag(Tags.TEST_ITR_TESTS_SKIPPING_TYPE, "test"); diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/buildsystem/BuildSystemSessionImpl.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/buildsystem/BuildSystemSessionImpl.java index 33d8e8d1d5e..513cb74938f 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/buildsystem/BuildSystemSessionImpl.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/buildsystem/BuildSystemSessionImpl.java @@ -195,6 +195,9 @@ private void onModuleFinish(AgentSpan moduleSpan) { SpanUtils.propagateTag(span, moduleSpan, Tags.TEST_ITR_TESTS_SKIPPING_TYPE); SpanUtils.propagateTag(span, moduleSpan, Tags.TEST_ITR_TESTS_SKIPPING_COUNT, Long::sum); SpanUtils.propagateTag(span, moduleSpan, DDTags.CI_ITR_TESTS_SKIPPED, Boolean::logicalOr); + + SpanUtils.propagateTag( + span, moduleSpan, Tags.TEST_TEST_MANAGEMENT_ENABLED, Boolean::logicalOr); } } diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/buildsystem/ProxyTestModule.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/buildsystem/ProxyTestModule.java index 17c6303756e..ff1467272cf 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/buildsystem/ProxyTestModule.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/buildsystem/ProxyTestModule.java @@ -15,6 +15,7 @@ import datadog.trace.civisibility.codeowners.Codeowners; import datadog.trace.civisibility.config.EarlyFlakeDetectionSettings; import datadog.trace.civisibility.config.ExecutionSettings; +import datadog.trace.civisibility.config.TestManagementSettings; import datadog.trace.civisibility.coverage.percentage.child.ChildProcessCoverageReporter; import datadog.trace.civisibility.decorator.TestDecorator; import datadog.trace.civisibility.domain.InstrumentationType; @@ -148,6 +149,8 @@ private void sendModuleExecutionResult() { boolean earlyFlakeDetectionEnabled = earlyFlakeDetectionSettings.isEnabled(); boolean earlyFlakeDetectionFaulty = earlyFlakeDetectionEnabled && executionStrategy.isEFDLimitReached(); + TestManagementSettings testManagementSettings = executionSettings.getTestManagementSettings(); + boolean testManagementEnabled = testManagementSettings.isEnabled(); long testsSkippedTotal = executionResults.getTestsSkippedByItr(); signalClient.send( @@ -158,6 +161,7 @@ private void sendModuleExecutionResult() { testSkippingEnabled, earlyFlakeDetectionEnabled, earlyFlakeDetectionFaulty, + testManagementEnabled, testsSkippedTotal, new TreeSet<>(testFrameworks))); diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/headless/HeadlessTestModule.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/headless/HeadlessTestModule.java index fa696149f21..3cb57b5854a 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/headless/HeadlessTestModule.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/headless/HeadlessTestModule.java @@ -16,6 +16,7 @@ import datadog.trace.civisibility.codeowners.Codeowners; import datadog.trace.civisibility.config.EarlyFlakeDetectionSettings; import datadog.trace.civisibility.config.ExecutionSettings; +import datadog.trace.civisibility.config.TestManagementSettings; import datadog.trace.civisibility.decorator.TestDecorator; import datadog.trace.civisibility.domain.AbstractTestModule; import datadog.trace.civisibility.domain.InstrumentationType; @@ -132,6 +133,11 @@ public void end(@Nullable Long endTime) { } } + TestManagementSettings testManagementSettings = executionSettings.getTestManagementSettings(); + if (testManagementSettings.isEnabled()) { + setTag(Tags.TEST_TEST_MANAGEMENT_ENABLED, true); + } + super.end(endTime); } diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/headless/HeadlessTestSession.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/headless/HeadlessTestSession.java index 070778f0ab9..1bed53b8344 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/headless/HeadlessTestSession.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/domain/headless/HeadlessTestSession.java @@ -90,7 +90,8 @@ private void propagateModuleTags(AgentSpan moduleSpan) { Tags.TEST_ITR_TESTS_SKIPPING_COUNT, Tags.TEST_EARLY_FLAKE_ENABLED, Tags.TEST_EARLY_FLAKE_ABORT_REASON, - DDTags.CI_ITR_TESTS_SKIPPED); + DDTags.CI_ITR_TESTS_SKIPPED, + Tags.TEST_TEST_MANAGEMENT_ENABLED); } @Override @@ -101,4 +102,9 @@ protected Collection additionalTelemetryTags() { } return Collections.emptySet(); } + + @Override + public void end(@Nullable Long endTime) { + super.end(endTime); + } } diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ipc/ModuleExecutionResult.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ipc/ModuleExecutionResult.java index 9473acaddb9..07884f30894 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ipc/ModuleExecutionResult.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/ipc/ModuleExecutionResult.java @@ -12,11 +12,13 @@ public class ModuleExecutionResult extends ModuleSignal { private static final int TEST_SKIPPING_ENABLED_FLAG = 2; private static final int EARLY_FLAKE_DETECTION_ENABLED_FLAG = 4; private static final int EARLY_FLAKE_DETECTION_FAULTY_FLAG = 8; + private static final int TEST_MANAGEMENT_ENABLED_FLAG = 16; private final boolean coverageEnabled; private final boolean testSkippingEnabled; private final boolean earlyFlakeDetectionEnabled; private final boolean earlyFlakeDetectionFaulty; + private final boolean testManagementEnabled; private final long testsSkippedTotal; private final Collection testFrameworks; @@ -27,6 +29,7 @@ public ModuleExecutionResult( boolean testSkippingEnabled, boolean earlyFlakeDetectionEnabled, boolean earlyFlakeDetectionFaulty, + boolean testManagementEnabled, long testsSkippedTotal, Collection testFrameworks) { super(sessionId, moduleId); @@ -34,6 +37,7 @@ public ModuleExecutionResult( this.testSkippingEnabled = testSkippingEnabled; this.earlyFlakeDetectionEnabled = earlyFlakeDetectionEnabled; this.earlyFlakeDetectionFaulty = earlyFlakeDetectionFaulty; + this.testManagementEnabled = testManagementEnabled; this.testsSkippedTotal = testsSkippedTotal; this.testFrameworks = testFrameworks; } @@ -54,6 +58,10 @@ public boolean isEarlyFlakeDetectionFaulty() { return earlyFlakeDetectionFaulty; } + public boolean isTestManagementEnabled() { + return testManagementEnabled; + } + public long getTestsSkippedTotal() { return testsSkippedTotal; } @@ -131,6 +139,9 @@ public ByteBuffer serialize() { if (earlyFlakeDetectionFaulty) { flags |= EARLY_FLAKE_DETECTION_FAULTY_FLAG; } + if (testManagementEnabled) { + flags |= TEST_MANAGEMENT_ENABLED_FLAG; + } s.write(flags); s.write(testsSkippedTotal); @@ -148,6 +159,7 @@ public static ModuleExecutionResult deserialize(ByteBuffer buffer) { boolean testSkippingEnabled = (flags & TEST_SKIPPING_ENABLED_FLAG) != 0; boolean earlyFlakeDetectionEnabled = (flags & EARLY_FLAKE_DETECTION_ENABLED_FLAG) != 0; boolean earlyFlakeDetectionFaulty = (flags & EARLY_FLAKE_DETECTION_FAULTY_FLAG) != 0; + boolean testManagementEnabled = (flags & TEST_MANAGEMENT_ENABLED_FLAG) != 0; long testsSkippedTotal = Serializer.readLong(buffer); Collection testFrameworks = @@ -160,6 +172,7 @@ public static ModuleExecutionResult deserialize(ByteBuffer buffer) { testSkippingEnabled, earlyFlakeDetectionEnabled, earlyFlakeDetectionFaulty, + testManagementEnabled, testsSkippedTotal, testFrameworks); } diff --git a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/test/ExecutionStrategy.java b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/test/ExecutionStrategy.java index 6764615386b..2cbc488b02c 100644 --- a/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/test/ExecutionStrategy.java +++ b/dd-java-agent/agent-ci-visibility/src/main/java/datadog/trace/civisibility/test/ExecutionStrategy.java @@ -8,6 +8,7 @@ import datadog.trace.api.civisibility.telemetry.tag.SkipReason; import datadog.trace.civisibility.config.EarlyFlakeDetectionSettings; import datadog.trace.civisibility.config.ExecutionSettings; +import datadog.trace.civisibility.config.TestManagementSettings; import datadog.trace.civisibility.execution.Regular; import datadog.trace.civisibility.execution.RetryUntilSuccessful; import datadog.trace.civisibility.execution.RunNTimes; @@ -62,6 +63,10 @@ public boolean isFlaky(TestIdentifier test) { } public boolean isQuarantined(TestIdentifier test) { + TestManagementSettings testManagementSettings = executionSettings.getTestManagementSettings(); + if (!testManagementSettings.isEnabled()) { + return false; + } Collection quarantinedTests = executionSettings.getQuarantinedTests(); return quarantinedTests.contains(test.withoutParameters()); } diff --git a/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/config/ConfigurationApiImplTest.groovy b/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/config/ConfigurationApiImplTest.groovy index 54a67336b2c..a7b2e50640c 100644 --- a/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/config/ConfigurationApiImplTest.groovy +++ b/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/config/ConfigurationApiImplTest.groovy @@ -54,13 +54,13 @@ class ConfigurationApiImplTest extends Specification { where: agentless | compression | expectedSettings - false | false | new CiVisibilitySettings(false, false, false, false, false, false, false, EarlyFlakeDetectionSettings.DEFAULT) - false | true | new CiVisibilitySettings(true, true, true, true, true, true, true, EarlyFlakeDetectionSettings.DEFAULT) - true | false | new CiVisibilitySettings(false, true, false, true, false, true, false, new EarlyFlakeDetectionSettings(true, [new EarlyFlakeDetectionSettings.ExecutionsByDuration(1000, 3)], 10)) + false | false | new CiVisibilitySettings(false, false, false, false, false, false, false, EarlyFlakeDetectionSettings.DEFAULT, TestManagementSettings.DEFAULT) + false | true | new CiVisibilitySettings(true, true, true, true, true, true, true, EarlyFlakeDetectionSettings.DEFAULT, TestManagementSettings.DEFAULT) + true | false | new CiVisibilitySettings(false, true, false, true, false, true, false, new EarlyFlakeDetectionSettings(true, [new EarlyFlakeDetectionSettings.ExecutionsByDuration(1000, 3)], 10), new TestManagementSettings(true, 10)) true | true | new CiVisibilitySettings(false, false, true, true, false, false, true, new EarlyFlakeDetectionSettings(true, [ new EarlyFlakeDetectionSettings.ExecutionsByDuration(5000, 3), new EarlyFlakeDetectionSettings.ExecutionsByDuration(120000, 2) - ], 10)) + ], 10), new TestManagementSettings(true, 20)) } def "test skippable tests request"() { diff --git a/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/config/ExecutionSettingsTest.groovy b/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/config/ExecutionSettingsTest.groovy index e1380576d31..ccd3cc78ff8 100644 --- a/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/config/ExecutionSettingsTest.groovy +++ b/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/config/ExecutionSettingsTest.groovy @@ -26,6 +26,7 @@ class ExecutionSettingsTest extends Specification { false, false, EarlyFlakeDetectionSettings.DEFAULT, + TestManagementSettings.DEFAULT, null, [:], [:], @@ -41,6 +42,7 @@ class ExecutionSettingsTest extends Specification { true, true, new EarlyFlakeDetectionSettings(true, [], 10), + new TestManagementSettings(true, 20), "", [(new TestIdentifier("bc", "def", "g")): new TestMetadata(true), (new TestIdentifier("de", "f", null)): new TestMetadata(false)], [:], @@ -57,6 +59,7 @@ class ExecutionSettingsTest extends Specification { false, true, new EarlyFlakeDetectionSettings(true, [new EarlyFlakeDetectionSettings.ExecutionsByDuration(10, 20)], 10), + new TestManagementSettings(true, 20), "itrCorrelationId", [:], ["cov" : BitSet.valueOf(new byte[]{ @@ -77,6 +80,7 @@ class ExecutionSettingsTest extends Specification { true, true, new EarlyFlakeDetectionSettings(true, [new EarlyFlakeDetectionSettings.ExecutionsByDuration(10, 20), new EarlyFlakeDetectionSettings.ExecutionsByDuration(30, 40)], 10), + new TestManagementSettings(true, 20), "itrCorrelationId", [(new TestIdentifier("bc", "def", null)): new TestMetadata(true), (new TestIdentifier("de", "f", null)): new TestMetadata(true)], ["cov" : BitSet.valueOf(new byte[]{ diff --git a/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/config/TestManagementSettingsSerializerTest.groovy b/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/config/TestManagementSettingsSerializerTest.groovy new file mode 100644 index 00000000000..b914dfd3a98 --- /dev/null +++ b/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/config/TestManagementSettingsSerializerTest.groovy @@ -0,0 +1,21 @@ +package datadog.trace.civisibility.config + +import datadog.trace.civisibility.ipc.serialization.Serializer +import spock.lang.Specification + +class TestManagementSettingsSerializerTest extends Specification { + def "test TestManagementSettings serialization: #iterationIndex"() { + when: + Serializer s = new Serializer() + TestManagementSettingsSerializer.serialize(s, settings) + + def buffer = s.flush() + def deserialized = TestManagementSettingsSerializer.deserialize(buffer) + + then: + deserialized == settings + + where: + settings << [TestManagementSettings.DEFAULT, new TestManagementSettings(true, 10),] + } +} diff --git a/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/domain/headless/HeadlessTestSessionTest.groovy b/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/domain/headless/HeadlessTestSessionTest.groovy new file mode 100644 index 00000000000..1cf2e858e31 --- /dev/null +++ b/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/domain/headless/HeadlessTestSessionTest.groovy @@ -0,0 +1,66 @@ +package datadog.trace.civisibility.domain.headless + +import datadog.trace.agent.test.asserts.ListWriterAssert +import datadog.trace.api.Config +import datadog.trace.api.DDSpanTypes +import datadog.trace.api.civisibility.coverage.CoverageStore +import datadog.trace.api.civisibility.telemetry.CiVisibilityMetricCollector +import datadog.trace.api.civisibility.telemetry.tag.Provider +import datadog.trace.bootstrap.instrumentation.api.Tags +import datadog.trace.civisibility.codeowners.Codeowners +import datadog.trace.civisibility.config.ExecutionSettings +import datadog.trace.civisibility.config.TestManagementSettings +import datadog.trace.civisibility.decorator.TestDecorator +import datadog.trace.civisibility.domain.SpanWriterTest +import datadog.trace.civisibility.source.LinesResolver +import datadog.trace.civisibility.source.SourcePathResolver +import datadog.trace.civisibility.test.ExecutionStrategy + +class HeadlessTestSessionTest extends SpanWriterTest { + + def "test tags are populated correctly in span"() { + setup: + def session = givenAHeadlessTestSession() + def module = session.testModuleStart("module-name", null) + + when: + module.end(null) + session.end(null) + + then: + ListWriterAssert.assertTraces(TEST_WRITER, 1, false, { + trace(2) { + span(0) { + spanType DDSpanTypes.TEST_SESSION_END + tags(false) { + "$Tags.TEST_TEST_MANAGEMENT_ENABLED" true + } + } + span (1) { + spanType DDSpanTypes.TEST_MODULE_END + } + } + }) + } + + private HeadlessTestSession givenAHeadlessTestSession() { + def executionSettings = Stub(ExecutionSettings) + executionSettings.getTestManagementSettings() >> new TestManagementSettings(true, 10) + + def executionStrategy = new ExecutionStrategy(Stub(Config), executionSettings, Stub(SourcePathResolver), Stub(LinesResolver)) + + new HeadlessTestSession( + "project-name", + null, + Provider.UNSUPPORTED, + Stub(Config), + Stub(CiVisibilityMetricCollector), + Stub(TestDecorator), + Stub(SourcePathResolver), + Stub(Codeowners), + Stub(LinesResolver), + Stub(CoverageStore.Factory), + executionStrategy + ) + } +} diff --git a/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/ipc/ModuleExecutionResultTest.groovy b/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/ipc/ModuleExecutionResultTest.groovy index 50de172483d..02bef4e6b1d 100644 --- a/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/ipc/ModuleExecutionResultTest.groovy +++ b/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/ipc/ModuleExecutionResultTest.groovy @@ -16,11 +16,11 @@ class ModuleExecutionResultTest extends Specification { where: signal << [ - new ModuleExecutionResult(DDTraceId.from(12345), 67890, false, false, false, false, 0, Collections.emptyList()), - new ModuleExecutionResult(DDTraceId.from(12345), 67890, true, false, true, true, 1, Collections.singletonList(new TestFramework("junit", "4.13.2"))), - new ModuleExecutionResult(DDTraceId.from(12345), 67890, false, true, true, false, 2, Arrays.asList(new TestFramework("junit", "4.13.2"), new TestFramework("junit", "5.9.2"))), - new ModuleExecutionResult(DD128bTraceId.from(12345, 67890), 67890, false, false, false, true, 3, Arrays.asList(new TestFramework("junit", null), new TestFramework("junit", "5.9.2"))), - new ModuleExecutionResult(DD128bTraceId.from(12345, 67890), 67890, true, true, true, true, Integer.MAX_VALUE, Arrays.asList(new TestFramework("junit", "4.13.2"), new TestFramework(null, "5.9.2"))) + new ModuleExecutionResult(DDTraceId.from(12345), 67890, false, false, false, false, false, 0, Collections.emptyList()), + new ModuleExecutionResult(DDTraceId.from(12345), 67890, true, false, true, true, true, 1, Collections.singletonList(new TestFramework("junit", "4.13.2"))), + new ModuleExecutionResult(DDTraceId.from(12345), 67890, false, true, true, false, false, 2, Arrays.asList(new TestFramework("junit", "4.13.2"), new TestFramework("junit", "5.9.2"))), + new ModuleExecutionResult(DD128bTraceId.from(12345, 67890), 67890, false, false, false, true, true, 3, Arrays.asList(new TestFramework("junit", null), new TestFramework("junit", "5.9.2"))), + new ModuleExecutionResult(DD128bTraceId.from(12345, 67890), 67890, true, true, true, true, true, Integer.MAX_VALUE, Arrays.asList(new TestFramework("junit", "4.13.2"), new TestFramework(null, "5.9.2"))) ] } } diff --git a/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/ipc/SignalServerTest.groovy b/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/ipc/SignalServerTest.groovy index 4db02ff58cf..b2f43e09955 100644 --- a/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/ipc/SignalServerTest.groovy +++ b/dd-java-agent/agent-ci-visibility/src/test/groovy/datadog/trace/civisibility/ipc/SignalServerTest.groovy @@ -12,7 +12,7 @@ class SignalServerTest extends Specification { def "test message send and receive"() { given: def signalProcessed = new AtomicBoolean(false) - def signal = new ModuleExecutionResult(DDTraceId.from(123), 456, true, true, false, false, 1, Collections.singletonList(new TestFramework("junit", "4.13.2"))) + def signal = new ModuleExecutionResult(DDTraceId.from(123), 456, true, true, false, false, false, 1, Collections.singletonList(new TestFramework("junit", "4.13.2"))) def server = new SignalServer() def received = new ArrayList() @@ -41,8 +41,8 @@ class SignalServerTest extends Specification { def "test multiple messages send and receive"() { given: - def signalA = new ModuleExecutionResult(DDTraceId.from(123), 456, false, false, false, false, 0, Collections.singletonList(new TestFramework("junit", "4.13.2"))) - def signalB = new ModuleExecutionResult(DDTraceId.from(234), 567, true, true, false, false, 1, Collections.singletonList(new TestFramework("junit", "4.13.2"))) + def signalA = new ModuleExecutionResult(DDTraceId.from(123), 456, false, false, false, false, false, 0, Collections.singletonList(new TestFramework("junit", "4.13.2"))) + def signalB = new ModuleExecutionResult(DDTraceId.from(234), 567, true, true, false, false, true, 1, Collections.singletonList(new TestFramework("junit", "4.13.2"))) def server = new SignalServer() def received = new ArrayList() @@ -70,8 +70,8 @@ class SignalServerTest extends Specification { def "test multiple clients send and receive"() { given: - def signalA = new ModuleExecutionResult(DDTraceId.from(123), 456, true, false, true, false, 1, Collections.singletonList(new TestFramework("junit", "4.13.2"))) - def signalB = new ModuleExecutionResult(DDTraceId.from(234), 567, false, true, false, true, 0, Collections.singletonList(new TestFramework("junit", "4.13.2"))) + def signalA = new ModuleExecutionResult(DDTraceId.from(123), 456, true, false, true, false, true, 1, Collections.singletonList(new TestFramework("junit", "4.13.2"))) + def signalB = new ModuleExecutionResult(DDTraceId.from(234), 567, false, true, false, true, false, 0, Collections.singletonList(new TestFramework("junit", "4.13.2"))) def server = new SignalServer() def received = new ArrayList() @@ -118,7 +118,7 @@ class SignalServerTest extends Specification { when: def address = server.getAddress() try (def client = new SignalClient(address, clientTimeoutMillis)) { - client.send(new ModuleExecutionResult(DDTraceId.from(123), 456, false, false, false, false, 0, Collections.singletonList(new TestFramework("junit", "4.13.2")))) + client.send(new ModuleExecutionResult(DDTraceId.from(123), 456, false, false, false, false, false, 0, Collections.singletonList(new TestFramework("junit", "4.13.2")))) } then: @@ -130,7 +130,7 @@ class SignalServerTest extends Specification { def "test error response receipt"() { given: - def signal = new ModuleExecutionResult(DDTraceId.from(123), 456, true, true, false, false, 1, Collections.singletonList(new TestFramework("junit", "4.13.2"))) + def signal = new ModuleExecutionResult(DDTraceId.from(123), 456, true, true, false, false, true, 1, Collections.singletonList(new TestFramework("junit", "4.13.2"))) def server = new SignalServer() def errorResponse = new ErrorResponse("An error occurred while processing the signal") diff --git a/dd-java-agent/agent-ci-visibility/src/test/resources/datadog/trace/civisibility/config/settings-response.ftl b/dd-java-agent/agent-ci-visibility/src/test/resources/datadog/trace/civisibility/config/settings-response.ftl index b657dd3fac5..5f5c61db670 100644 --- a/dd-java-agent/agent-ci-visibility/src/test/resources/datadog/trace/civisibility/config/settings-response.ftl +++ b/dd-java-agent/agent-ci-visibility/src/test/resources/datadog/trace/civisibility/config/settings-response.ftl @@ -18,6 +18,10 @@ }, "faulty_session_threshold": ${settings.earlyFlakeDetectionSettings.faultySessionThreshold} + }, + "test_management": { + "enabled": ${settings.testManagementSettings.enabled?c}, + "attempt_to_fix_retries": ${settings.testManagementSettings.attemptToFixRetries} } } } diff --git a/dd-java-agent/agent-ci-visibility/src/testFixtures/groovy/datadog/trace/civisibility/CiVisibilityInstrumentationTest.groovy b/dd-java-agent/agent-ci-visibility/src/testFixtures/groovy/datadog/trace/civisibility/CiVisibilityInstrumentationTest.groovy index d256af25d92..18247029797 100644 --- a/dd-java-agent/agent-ci-visibility/src/testFixtures/groovy/datadog/trace/civisibility/CiVisibilityInstrumentationTest.groovy +++ b/dd-java-agent/agent-ci-visibility/src/testFixtures/groovy/datadog/trace/civisibility/CiVisibilityInstrumentationTest.groovy @@ -80,7 +80,7 @@ abstract class CiVisibilityInstrumentationTest extends AgentTestRunner { private static volatile boolean flakyRetryEnabled = false private static volatile boolean earlyFlakinessDetectionEnabled = false private static volatile boolean impactedTestsDetectionEnabled = false - private static volatile boolean quarantineEnabled = false + private static volatile boolean testManagementEnabled = false public static final int SLOW_TEST_THRESHOLD_MILLIS = 1000 public static final int VERY_SLOW_TEST_THRESHOLD_MILLIS = 2000 @@ -117,6 +117,10 @@ abstract class CiVisibilityInstrumentationTest extends AgentTestRunner { ], 0) : EarlyFlakeDetectionSettings.DEFAULT + def testManagementSettings = testManagementEnabled + ? new TestManagementSettings(true, 20) + : TestManagementSettings.DEFAULT + Map skippableTestsWithMetadata = new HashMap<>() for (TestIdentifier skippableTest : skippableTests) { skippableTestsWithMetadata.put(skippableTest, new TestMetadata(false)) @@ -129,6 +133,7 @@ abstract class CiVisibilityInstrumentationTest extends AgentTestRunner { flakyRetryEnabled, impactedTestsDetectionEnabled, earlyFlakinessDetectionSettings, + testManagementSettings, itrEnabled ? "itrCorrelationId" : null, skippableTestsWithMetadata, [:], @@ -259,10 +264,10 @@ abstract class CiVisibilityInstrumentationTest extends AgentTestRunner { knownTests.clear() diff = LineDiff.EMPTY itrEnabled = false - quarantineEnabled = false flakyRetryEnabled = false earlyFlakinessDetectionEnabled = false impactedTestsDetectionEnabled = false + testManagementEnabled = false TEST_WRITER.setFilter(spanFilter) } @@ -288,10 +293,6 @@ abstract class CiVisibilityInstrumentationTest extends AgentTestRunner { this.diff = diff } - def givenQuarantineEnabled(boolean quarantineEnabled) { - this.quarantineEnabled = quarantineEnabled - } - def givenFlakyRetryEnabled(boolean flakyRetryEnabled) { this.flakyRetryEnabled = flakyRetryEnabled } @@ -304,6 +305,10 @@ abstract class CiVisibilityInstrumentationTest extends AgentTestRunner { this.impactedTestsDetectionEnabled = impactedTestsDetectionEnabled } + def givenTestManagementEnabled(boolean testManagementEnabled) { + this.testManagementEnabled = testManagementEnabled + } + def givenTestsOrder(String testsOrder) { injectSysConfig(CiVisibilityConfig.CIVISIBILITY_TEST_ORDER, testsOrder) } @@ -321,6 +326,8 @@ abstract class CiVisibilityInstrumentationTest extends AgentTestRunner { injectSysConfig(CiVisibilityConfig.CIVISIBILITY_ITR_ENABLED, "true") injectSysConfig(CiVisibilityConfig.CIVISIBILITY_FLAKY_RETRY_ENABLED, "true") injectSysConfig(CiVisibilityConfig.CIVISIBILITY_EARLY_FLAKE_DETECTION_LOWER_LIMIT, "1") + injectSysConfig(CiVisibilityConfig.TEST_MANAGEMENT_ENABLED, "true") + injectSysConfig(CiVisibilityConfig.TEST_MANAGEMENT_ATTEMPT_TO_FIX_RETRIES, "20") } def cleanupSpec() { diff --git a/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/test/groovy/CucumberTest.groovy b/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/test/groovy/CucumberTest.groovy index 7ab44abc90d..3af7ef49258 100644 --- a/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/test/groovy/CucumberTest.groovy +++ b/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/test/groovy/CucumberTest.groovy @@ -90,7 +90,7 @@ class CucumberTest extends CiVisibilityInstrumentationTest { } def "test quarantined #testcaseName"() { - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) runFeatures(features, true) @@ -105,7 +105,7 @@ class CucumberTest extends CiVisibilityInstrumentationTest { } def "test quarantined auto-retries #testcaseName"() { - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) givenFlakyRetryEnabled(true) @@ -126,7 +126,7 @@ class CucumberTest extends CiVisibilityInstrumentationTest { } def "test quarantined early flakiness detection #testcaseName"() { - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) givenEarlyFlakinessDetectionEnabled(true) diff --git a/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/test/resources/test-quarantined-failed-atr/events.ftl b/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/test/resources/test-quarantined-failed-atr/events.ftl index f1393968ce4..88f48a49fac 100644 --- a/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/test/resources/test-quarantined-failed-atr/events.ftl +++ b/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/test/resources/test-quarantined-failed-atr/events.ftl @@ -293,6 +293,7 @@ "test.framework" : "cucumber", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -325,6 +326,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "cucumber-junit-4", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/test/resources/test-quarantined-failed-efd/events.ftl b/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/test/resources/test-quarantined-failed-efd/events.ftl index fa19404348d..6e29663a772 100644 --- a/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/test/resources/test-quarantined-failed-efd/events.ftl +++ b/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/test/resources/test-quarantined-failed-efd/events.ftl @@ -199,6 +199,7 @@ "test.framework" : "cucumber", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -232,6 +233,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "cucumber-junit-4", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/test/resources/test-quarantined-failed-known/events.ftl b/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/test/resources/test-quarantined-failed-known/events.ftl index ac1976f8ed8..9fe8a3800b8 100644 --- a/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/test/resources/test-quarantined-failed-known/events.ftl +++ b/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/test/resources/test-quarantined-failed-known/events.ftl @@ -97,6 +97,7 @@ "test.framework" : "cucumber", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -130,6 +131,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "cucumber-junit-4", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/test/resources/test-quarantined-failed/events.ftl b/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/test/resources/test-quarantined-failed/events.ftl index 962da0e4e21..b748a83b9b7 100644 --- a/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/test/resources/test-quarantined-failed/events.ftl +++ b/dd-java-agent/instrumentation/junit-4.10/cucumber-junit-4/src/test/resources/test-quarantined-failed/events.ftl @@ -96,6 +96,7 @@ "test.framework" : "cucumber", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -128,6 +129,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "cucumber-junit-4", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-after-class/events.ftl b/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-after-class/events.ftl index 25474df8081..e0b54e4b12e 100644 --- a/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-after-class/events.ftl +++ b/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-after-class/events.ftl @@ -1,224 +1,224 @@ [ { - "type" : "test_session_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_session", - "resource" : "junit-4.13", - "start" : ${content_start}, "duration" : ${content_duration}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid}, - "test.type" : "test", + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.status" : "fail", - "test_session.name" : "session-name", - "language" : "jvm", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", + "language" : "jvm", "library_version" : ${content_meta_library_version}, - "component" : "junit", - "_dd.profiling.ctx" : "test", - "span.kind" : "test_session_end", "runtime-id" : ${content_meta_runtime_id}, + "span.kind" : "test_session_end", "test.command" : "junit-4.13", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.status" : "fail", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id} + }, + "name" : "junit.test_session", + "resource" : "junit-4.13", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_session_end", + "version" : 1 }, { - "type" : "test_module_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_module", - "resource" : "junit-4.13", - "start" : ${content_start_2}, "duration" : ${content_duration_2}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_2}, - "test.type" : "test", - "test.module" : "junit-4.13", - "test.status" : "fail", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_module_end", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.module" : "junit-4.13", + "test.status" : "fail", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} + }, + "name" : "junit.test_module", + "resource" : "junit-4.13", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_2}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_module_end", + "version" : 1 }, { - "type" : "test_suite_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_suite", - "resource" : "org.example.TestFailedAfterClass", - "start" : ${content_start_3}, "duration" : ${content_duration_3}, "error" : 1, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, - "test.source.end" : 19, - "test.source.start" : 11 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_3}, - "test.type" : "test", - "test.source.file" : "dummy_source_path", - "test.module" : "junit-4.13", - "test.status" : "fail", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "test.codeowners" : "[\"owner1\",\"owner2\"]", - "library_version" : ${content_meta_library_version}, "component" : "junit", - "error.type" : "java.lang.RuntimeException", - "span.kind" : "test_suite_end", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "error.message" : ${content_meta_error_message}, - "test.suite" : "org.example.TestFailedAfterClass", "error.stack" : ${content_meta_error_stack}, + "error.type" : "java.lang.RuntimeException", + "library_version" : ${content_meta_library_version}, + "span.kind" : "test_suite_end", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.module" : "junit-4.13", + "test.source.file" : "dummy_source_path", + "test.status" : "fail", + "test.suite" : "org.example.TestFailedAfterClass", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, + "test.source.end" : 19, + "test.source.start" : 11 + }, + "name" : "junit.test_suite", + "resource" : "org.example.TestFailedAfterClass", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_3}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id} + }, + "type" : "test_suite_end", + "version" : 1 }, { - "type" : "test", - "version" : 2, "content" : { - "trace_id" : ${content_trace_id}, - "span_id" : ${content_span_id}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestFailedAfterClass.another_test_succeed", - "start" : ${content_start_4}, "duration" : ${content_duration_4}, "error" : 0, - "metrics" : { - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, - "test.source.end" : 18, - "test.source.start" : 12 - }, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "another_test_succeed()V", - "test.module" : "junit-4.13", - "test.status" : "pass", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "language" : "jvm", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "another_test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit4", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.module" : "junit-4.13", + "test.name" : "another_test_succeed", + "test.source.file" : "dummy_source_path", + "test.source.method" : "another_test_succeed()V", + "test.status" : "pass", "test.suite" : "org.example.TestFailedAfterClass", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "component" : "junit", - "_dd.profiling.ctx" : "test", - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } -}, { - "type" : "test", - "version" : 2, - "content" : { - "trace_id" : ${content_trace_id_2}, - "span_id" : ${content_span_id_2}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestFailedAfterClass.test_succeed", - "start" : ${content_start_5}, - "duration" : ${content_duration_5}, - "error" : 0, + "test_session.name" : "session-name" + }, "metrics" : { - "process_id" : ${content_metrics_process_id}, + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, "_dd.profiling.enabled" : 0, "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "process_id" : ${content_metrics_process_id}, "test.source.end" : 18, "test.source.start" : 12 }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestFailedAfterClass.another_test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id}, + "start" : ${content_start_4}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id} + }, + "type" : "test", + "version" : 2 +}, { + "content" : { + "duration" : ${content_duration_5}, + "error" : 0, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "test_succeed()V", - "test.module" : "junit-4.13", - "test.status" : "pass", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "language" : "jvm", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit4", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.module" : "junit-4.13", + "test.name" : "test_succeed", + "test.source.file" : "dummy_source_path", + "test.source.method" : "test_succeed()V", + "test.status" : "pass", "test.suite" : "org.example.TestFailedAfterClass", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "component" : "junit", - "_dd.profiling.ctx" : "test", - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id}, + "test.source.end" : 18, + "test.source.start" : 12 + }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestFailedAfterClass.test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_2}, + "start" : ${content_start_5}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id_2} + }, + "type" : "test", + "version" : 2 }, { - "type" : "span", - "version" : 1, "content" : { - "trace_id" : ${content_test_session_id}, - "span_id" : ${content_span_id_3}, - "parent_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "tearDown", - "resource" : "tearDown", - "start" : ${content_start_6}, "duration" : ${content_duration_6}, "error" : 1, - "metrics" : { }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_4}, + "env" : "none", + "error.message" : ${content_meta_error_message}, "error.stack" : ${content_meta_error_stack_2}, - "test.callback" : "AfterClass", - "library_version" : ${content_meta_library_version}, "error.type" : "java.lang.RuntimeException", - "env" : "none", - "error.message" : ${content_meta_error_message} - } - } + "library_version" : ${content_meta_library_version}, + "test.callback" : "AfterClass" + }, + "metrics" : { }, + "name" : "tearDown", + "parent_id" : ${content_test_suite_id}, + "resource" : "tearDown", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_3}, + "start" : ${content_start_6}, + "trace_id" : ${content_test_session_id} + }, + "type" : "span", + "version" : 1 } ] \ No newline at end of file diff --git a/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-after-param/events.ftl b/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-after-param/events.ftl index 33a0c175bfd..916bf7a309d 100644 --- a/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-after-param/events.ftl +++ b/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-after-param/events.ftl @@ -1,289 +1,289 @@ [ { - "type" : "test_session_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_session", - "resource" : "junit-4.13", - "start" : ${content_start}, "duration" : ${content_duration}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid}, - "test.type" : "test", + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.status" : "pass", - "test_session.name" : "session-name", - "language" : "jvm", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", + "language" : "jvm", "library_version" : ${content_meta_library_version}, - "component" : "junit", - "_dd.profiling.ctx" : "test", - "span.kind" : "test_session_end", "runtime-id" : ${content_meta_runtime_id}, + "span.kind" : "test_session_end", "test.command" : "junit-4.13", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.status" : "pass", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id} + }, + "name" : "junit.test_session", + "resource" : "junit-4.13", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_session_end", + "version" : 1 }, { - "type" : "test_module_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_module", - "resource" : "junit-4.13", - "start" : ${content_start_2}, "duration" : ${content_duration_2}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_2}, - "test.type" : "test", - "test.module" : "junit-4.13", - "test.status" : "pass", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_module_end", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.module" : "junit-4.13", + "test.status" : "pass", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} + }, + "name" : "junit.test_module", + "resource" : "junit-4.13", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_2}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_module_end", + "version" : 1 }, { - "type" : "test_suite_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_suite", - "resource" : "org.example.TestFailedAfterParam", - "start" : ${content_start_3}, "duration" : ${content_duration_3}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, - "test.source.end" : 19, - "test.source.start" : 11 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_3}, - "test.type" : "test", - "test.source.file" : "dummy_source_path", - "test.module" : "junit-4.13", - "test.status" : "pass", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", - "test.codeowners" : "[\"owner1\",\"owner2\"]", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_suite_end", - "test.suite" : "org.example.TestFailedAfterParam", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.module" : "junit-4.13", + "test.source.file" : "dummy_source_path", + "test.status" : "pass", + "test.suite" : "org.example.TestFailedAfterParam", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, + "test.source.end" : 19, + "test.source.start" : 11 + }, + "name" : "junit.test_suite", + "resource" : "org.example.TestFailedAfterParam", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_3}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id} + }, + "type" : "test_suite_end", + "version" : 1 }, { - "type" : "test", - "version" : 2, "content" : { - "trace_id" : ${content_trace_id}, - "span_id" : ${content_span_id}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestFailedAfterParam.parameterized_test_succeed", - "start" : ${content_start_4}, "duration" : ${content_duration_4}, "error" : 0, - "metrics" : { - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, - "test.source.end" : 18, - "test.source.start" : 12 - }, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "parameterized_test_succeed()V", - "test.module" : "junit-4.13", - "test.status" : "pass", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "language" : "jvm", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "parameterized_test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit4", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.module" : "junit-4.13", + "test.name" : "parameterized_test_succeed", + "test.parameters" : "{\"metadata\":{\"test_name\":\"parameterized_test_succeed[0]\"}}", + "test.source.file" : "dummy_source_path", + "test.source.method" : "parameterized_test_succeed()V", + "test.status" : "pass", "test.suite" : "org.example.TestFailedAfterParam", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "test.parameters" : "{\"metadata\":{\"test_name\":\"parameterized_test_succeed[0]\"}}", - "component" : "junit", - "_dd.profiling.ctx" : "test", - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } -}, { - "type" : "test", - "version" : 2, - "content" : { - "trace_id" : ${content_trace_id_2}, - "span_id" : ${content_span_id_2}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestFailedAfterParam.parameterized_test_succeed", - "start" : ${content_start_5}, - "duration" : ${content_duration_5}, - "error" : 0, + "test_session.name" : "session-name" + }, "metrics" : { - "process_id" : ${content_metrics_process_id}, + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, "_dd.profiling.enabled" : 0, "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "process_id" : ${content_metrics_process_id}, "test.source.end" : 18, "test.source.start" : 12 }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestFailedAfterParam.parameterized_test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id}, + "start" : ${content_start_4}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id} + }, + "type" : "test", + "version" : 2 +}, { + "content" : { + "duration" : ${content_duration_5}, + "error" : 0, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "parameterized_test_succeed()V", - "test.module" : "junit-4.13", - "test.status" : "pass", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "language" : "jvm", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "parameterized_test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit4", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.module" : "junit-4.13", + "test.name" : "parameterized_test_succeed", + "test.parameters" : "{\"metadata\":{\"test_name\":\"parameterized_test_succeed[1]\"}}", + "test.source.file" : "dummy_source_path", + "test.source.method" : "parameterized_test_succeed()V", + "test.status" : "pass", "test.suite" : "org.example.TestFailedAfterParam", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "test.parameters" : "{\"metadata\":{\"test_name\":\"parameterized_test_succeed[1]\"}}", - "component" : "junit", - "_dd.profiling.ctx" : "test", - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id}, + "test.source.end" : 18, + "test.source.start" : 12 + }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestFailedAfterParam.parameterized_test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_2}, + "start" : ${content_start_5}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id_2} + }, + "type" : "test", + "version" : 2 }, { - "type" : "span", - "version" : 1, "content" : { - "trace_id" : ${content_test_session_id}, - "span_id" : ${content_span_id_3}, - "parent_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "setup", - "resource" : "setup", - "start" : ${content_start_6}, "duration" : ${content_duration_6}, "error" : 0, - "metrics" : { }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_4}, - "test.callback" : "BeforeParam", + "env" : "none", "library_version" : ${content_meta_library_version}, - "env" : "none" - } - } -}, { - "type" : "span", - "version" : 1, - "content" : { - "trace_id" : ${content_test_session_id}, - "span_id" : ${content_span_id_4}, - "parent_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "test.callback" : "BeforeParam" + }, + "metrics" : { }, "name" : "setup", + "parent_id" : ${content_test_suite_id}, "resource" : "setup", - "start" : ${content_start_7}, + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_3}, + "start" : ${content_start_6}, + "trace_id" : ${content_test_session_id} + }, + "type" : "span", + "version" : 1 +}, { + "content" : { "duration" : ${content_duration_7}, "error" : 0, - "metrics" : { }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_5}, - "test.callback" : "BeforeParam", + "env" : "none", "library_version" : ${content_meta_library_version}, - "env" : "none" - } - } -}, { - "type" : "span", - "version" : 1, - "content" : { - "trace_id" : ${content_test_session_id}, - "span_id" : ${content_span_id_5}, + "test.callback" : "BeforeParam" + }, + "metrics" : { }, + "name" : "setup", "parent_id" : ${content_test_suite_id}, + "resource" : "setup", "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "tearDown", - "resource" : "tearDown", - "start" : ${content_start_8}, + "span_id" : ${content_span_id_4}, + "start" : ${content_start_7}, + "trace_id" : ${content_test_session_id} + }, + "type" : "span", + "version" : 1 +}, { + "content" : { "duration" : ${content_duration_8}, "error" : 1, - "metrics" : { }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_6}, + "env" : "none", + "error.message" : ${content_meta_error_message}, "error.stack" : ${content_meta_error_stack}, - "test.callback" : "AfterParam", - "library_version" : ${content_meta_library_version}, "error.type" : "java.lang.RuntimeException", - "env" : "none", - "error.message" : ${content_meta_error_message} - } - } -}, { - "type" : "span", - "version" : 1, - "content" : { - "trace_id" : ${content_test_session_id}, - "span_id" : ${content_span_id_6}, - "parent_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "library_version" : ${content_meta_library_version}, + "test.callback" : "AfterParam" + }, + "metrics" : { }, "name" : "tearDown", + "parent_id" : ${content_test_suite_id}, "resource" : "tearDown", - "start" : ${content_start_9}, + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_5}, + "start" : ${content_start_8}, + "trace_id" : ${content_test_session_id} + }, + "type" : "span", + "version" : 1 +}, { + "content" : { "duration" : ${content_duration_9}, "error" : 1, - "metrics" : { }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_7}, + "env" : "none", + "error.message" : ${content_meta_error_message}, "error.stack" : ${content_meta_error_stack_2}, - "test.callback" : "AfterParam", - "library_version" : ${content_meta_library_version}, "error.type" : "java.lang.RuntimeException", - "env" : "none", - "error.message" : ${content_meta_error_message} - } - } + "library_version" : ${content_meta_library_version}, + "test.callback" : "AfterParam" + }, + "metrics" : { }, + "name" : "tearDown", + "parent_id" : ${content_test_suite_id}, + "resource" : "tearDown", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_6}, + "start" : ${content_start_9}, + "trace_id" : ${content_test_session_id} + }, + "type" : "span", + "version" : 1 } ] \ No newline at end of file diff --git a/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-after/events.ftl b/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-after/events.ftl index bf98663d9e0..3285a104314 100644 --- a/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-after/events.ftl +++ b/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-after/events.ftl @@ -1,249 +1,249 @@ [ { - "type" : "test_session_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_session", - "resource" : "junit-4.13", - "start" : ${content_start}, "duration" : ${content_duration}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid}, - "test.type" : "test", + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.status" : "fail", - "test_session.name" : "session-name", - "language" : "jvm", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", + "language" : "jvm", "library_version" : ${content_meta_library_version}, - "component" : "junit", - "_dd.profiling.ctx" : "test", - "span.kind" : "test_session_end", "runtime-id" : ${content_meta_runtime_id}, + "span.kind" : "test_session_end", "test.command" : "junit-4.13", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.status" : "fail", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id} + }, + "name" : "junit.test_session", + "resource" : "junit-4.13", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_session_end", + "version" : 1 }, { - "type" : "test_module_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_module", - "resource" : "junit-4.13", - "start" : ${content_start_2}, "duration" : ${content_duration_2}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_2}, - "test.type" : "test", - "test.module" : "junit-4.13", - "test.status" : "fail", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_module_end", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.module" : "junit-4.13", + "test.status" : "fail", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} + }, + "name" : "junit.test_module", + "resource" : "junit-4.13", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_2}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_module_end", + "version" : 1 }, { - "type" : "test_suite_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_suite", - "resource" : "org.example.TestFailedAfter", - "start" : ${content_start_3}, "duration" : ${content_duration_3}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, - "test.source.end" : 19, - "test.source.start" : 11 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_3}, - "test.type" : "test", - "test.source.file" : "dummy_source_path", - "test.module" : "junit-4.13", - "test.status" : "fail", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", - "test.codeowners" : "[\"owner1\",\"owner2\"]", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_suite_end", - "test.suite" : "org.example.TestFailedAfter", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.module" : "junit-4.13", + "test.source.file" : "dummy_source_path", + "test.status" : "fail", + "test.suite" : "org.example.TestFailedAfter", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, + "test.source.end" : 19, + "test.source.start" : 11 + }, + "name" : "junit.test_suite", + "resource" : "org.example.TestFailedAfter", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_3}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id} + }, + "type" : "test_suite_end", + "version" : 1 }, { - "type" : "test", - "version" : 2, "content" : { - "trace_id" : ${content_trace_id}, - "span_id" : ${content_span_id}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestFailedAfter.another_test_succeed", - "start" : ${content_start_4}, "duration" : ${content_duration_4}, "error" : 1, - "metrics" : { - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, - "test.source.end" : 18, - "test.source.start" : 12 - }, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "another_test_succeed()V", - "test.module" : "junit-4.13", - "test.status" : "fail", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", + "error.message" : ${content_meta_error_message}, + "error.stack" : ${content_meta_error_stack}, + "error.type" : "java.lang.RuntimeException", "language" : "jvm", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "another_test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit4", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.module" : "junit-4.13", + "test.name" : "another_test_succeed", + "test.source.file" : "dummy_source_path", + "test.source.method" : "another_test_succeed()V", + "test.status" : "fail", "test.suite" : "org.example.TestFailedAfter", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "component" : "junit", - "error.type" : "java.lang.RuntimeException", - "_dd.profiling.ctx" : "test", - "error.message" : ${content_meta_error_message}, - "error.stack" : ${content_meta_error_stack}, - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } -}, { - "type" : "test", - "version" : 2, - "content" : { - "trace_id" : ${content_trace_id_2}, - "span_id" : ${content_span_id_2}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestFailedAfter.test_succeed", - "start" : ${content_start_5}, - "duration" : ${content_duration_5}, - "error" : 1, + "test_session.name" : "session-name" + }, "metrics" : { - "process_id" : ${content_metrics_process_id}, + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, "_dd.profiling.enabled" : 0, "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "process_id" : ${content_metrics_process_id}, "test.source.end" : 18, "test.source.start" : 12 }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestFailedAfter.another_test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id}, + "start" : ${content_start_4}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id} + }, + "type" : "test", + "version" : 2 +}, { + "content" : { + "duration" : ${content_duration_5}, + "error" : 1, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "test_succeed()V", - "test.module" : "junit-4.13", - "test.status" : "fail", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", + "error.message" : ${content_meta_error_message}, + "error.stack" : ${content_meta_error_stack_2}, + "error.type" : "java.lang.RuntimeException", "language" : "jvm", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit4", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.module" : "junit-4.13", + "test.name" : "test_succeed", + "test.source.file" : "dummy_source_path", + "test.source.method" : "test_succeed()V", + "test.status" : "fail", "test.suite" : "org.example.TestFailedAfter", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "component" : "junit", - "error.type" : "java.lang.RuntimeException", - "_dd.profiling.ctx" : "test", - "error.message" : ${content_meta_error_message}, - "error.stack" : ${content_meta_error_stack_2}, - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id}, + "test.source.end" : 18, + "test.source.start" : 12 + }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestFailedAfter.test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_2}, + "start" : ${content_start_5}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id_2} + }, + "type" : "test", + "version" : 2 }, { - "type" : "span", - "version" : 1, "content" : { - "trace_id" : ${content_trace_id_2}, - "span_id" : ${content_span_id_3}, - "parent_id" : ${content_span_id_2}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "tearDown", - "resource" : "tearDown", - "start" : ${content_start_6}, "duration" : ${content_duration_6}, "error" : 1, - "metrics" : { }, "meta" : { + "env" : "none", + "error.message" : ${content_meta_error_message}, "error.stack" : ${content_meta_error_stack_3}, - "test.callback" : "After", - "library_version" : ${content_meta_library_version}, "error.type" : "java.lang.RuntimeException", - "env" : "none", - "error.message" : ${content_meta_error_message} - } - } -}, { - "type" : "span", - "version" : 1, - "content" : { - "trace_id" : ${content_trace_id}, - "span_id" : ${content_span_id_4}, - "parent_id" : ${content_span_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "library_version" : ${content_meta_library_version}, + "test.callback" : "After" + }, + "metrics" : { }, "name" : "tearDown", + "parent_id" : ${content_span_id_2}, "resource" : "tearDown", - "start" : ${content_start_7}, + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_3}, + "start" : ${content_start_6}, + "trace_id" : ${content_trace_id_2} + }, + "type" : "span", + "version" : 1 +}, { + "content" : { "duration" : ${content_duration_7}, "error" : 1, - "metrics" : { }, "meta" : { + "env" : "none", + "error.message" : ${content_meta_error_message}, "error.stack" : ${content_meta_error_stack_4}, - "test.callback" : "After", - "library_version" : ${content_meta_library_version}, "error.type" : "java.lang.RuntimeException", - "env" : "none", - "error.message" : ${content_meta_error_message} - } - } + "library_version" : ${content_meta_library_version}, + "test.callback" : "After" + }, + "metrics" : { }, + "name" : "tearDown", + "parent_id" : ${content_span_id}, + "resource" : "tearDown", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_4}, + "start" : ${content_start_7}, + "trace_id" : ${content_trace_id} + }, + "type" : "span", + "version" : 1 } ] \ No newline at end of file diff --git a/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-before-class/events.ftl b/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-before-class/events.ftl index ee89aa70ba7..8babbbea88b 100644 --- a/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-before-class/events.ftl +++ b/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-before-class/events.ftl @@ -1,130 +1,130 @@ [ { - "type" : "test_session_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_session", - "resource" : "junit-4.13", - "start" : ${content_start}, "duration" : ${content_duration}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid}, - "test.type" : "test", + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.status" : "fail", - "test_session.name" : "session-name", - "language" : "jvm", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", + "language" : "jvm", "library_version" : ${content_meta_library_version}, - "component" : "junit", - "_dd.profiling.ctx" : "test", - "span.kind" : "test_session_end", "runtime-id" : ${content_meta_runtime_id}, + "span.kind" : "test_session_end", "test.command" : "junit-4.13", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.status" : "fail", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id} + }, + "name" : "junit.test_session", + "resource" : "junit-4.13", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_session_end", + "version" : 1 }, { - "type" : "test_module_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_module", - "resource" : "junit-4.13", - "start" : ${content_start_2}, "duration" : ${content_duration_2}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_2}, - "test.type" : "test", - "test.module" : "junit-4.13", - "test.status" : "fail", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_module_end", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.module" : "junit-4.13", + "test.status" : "fail", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} + }, + "name" : "junit.test_module", + "resource" : "junit-4.13", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_2}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_module_end", + "version" : 1 }, { - "type" : "test_suite_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_suite", - "resource" : "org.example.TestFailedBeforeClass", - "start" : ${content_start_3}, "duration" : ${content_duration_3}, "error" : 1, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, - "test.source.end" : 19, - "test.source.start" : 11 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_3}, - "test.type" : "test", - "test.source.file" : "dummy_source_path", - "test.module" : "junit-4.13", - "test.status" : "fail", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "test.codeowners" : "[\"owner1\",\"owner2\"]", - "library_version" : ${content_meta_library_version}, "component" : "junit", - "error.type" : "java.lang.RuntimeException", - "span.kind" : "test_suite_end", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "error.message" : ${content_meta_error_message}, - "test.suite" : "org.example.TestFailedBeforeClass", "error.stack" : ${content_meta_error_stack}, + "error.type" : "java.lang.RuntimeException", + "library_version" : ${content_meta_library_version}, + "span.kind" : "test_suite_end", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.module" : "junit-4.13", + "test.source.file" : "dummy_source_path", + "test.status" : "fail", + "test.suite" : "org.example.TestFailedBeforeClass", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, + "test.source.end" : 19, + "test.source.start" : 11 + }, + "name" : "junit.test_suite", + "resource" : "org.example.TestFailedBeforeClass", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_3}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id} + }, + "type" : "test_suite_end", + "version" : 1 }, { - "type" : "span", - "version" : 1, "content" : { - "trace_id" : ${content_test_session_id}, - "span_id" : ${content_span_id}, - "parent_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "setup", - "resource" : "setup", - "start" : ${content_start_4}, "duration" : ${content_duration_4}, "error" : 1, - "metrics" : { }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_4}, + "env" : "none", + "error.message" : ${content_meta_error_message}, "error.stack" : ${content_meta_error_stack_2}, - "test.callback" : "BeforeClass", - "library_version" : ${content_meta_library_version}, "error.type" : "java.lang.RuntimeException", - "env" : "none", - "error.message" : ${content_meta_error_message} - } - } + "library_version" : ${content_meta_library_version}, + "test.callback" : "BeforeClass" + }, + "metrics" : { }, + "name" : "setup", + "parent_id" : ${content_test_suite_id}, + "resource" : "setup", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id}, + "start" : ${content_start_4}, + "trace_id" : ${content_test_session_id} + }, + "type" : "span", + "version" : 1 } ] \ No newline at end of file diff --git a/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-before-param/events.ftl b/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-before-param/events.ftl index 2399e8b5b57..4ab3b38a4ad 100644 --- a/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-before-param/events.ftl +++ b/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-before-param/events.ftl @@ -1,193 +1,193 @@ [ { - "type" : "test_session_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_session", - "resource" : "junit-4.13", - "start" : ${content_start}, "duration" : ${content_duration}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid}, - "test.type" : "test", + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.status" : "skip", - "test_session.name" : "session-name", - "language" : "jvm", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", + "language" : "jvm", "library_version" : ${content_meta_library_version}, - "component" : "junit", - "_dd.profiling.ctx" : "test", - "span.kind" : "test_session_end", "runtime-id" : ${content_meta_runtime_id}, + "span.kind" : "test_session_end", "test.command" : "junit-4.13", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.status" : "skip", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id} + }, + "name" : "junit.test_session", + "resource" : "junit-4.13", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_session_end", + "version" : 1 }, { - "type" : "test_module_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_module", - "resource" : "junit-4.13", - "start" : ${content_start_2}, "duration" : ${content_duration_2}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_2}, - "test.type" : "test", - "test.module" : "junit-4.13", - "test.status" : "skip", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_module_end", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.module" : "junit-4.13", + "test.status" : "skip", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} + }, + "name" : "junit.test_module", + "resource" : "junit-4.13", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_2}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_module_end", + "version" : 1 }, { - "type" : "test_suite_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_suite", - "resource" : "org.example.TestFailedBeforeParam", - "start" : ${content_start_3}, "duration" : ${content_duration_3}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, - "test.source.end" : 19, - "test.source.start" : 11 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_3}, - "test.type" : "test", - "test.source.file" : "dummy_source_path", - "test.module" : "junit-4.13", - "test.status" : "skip", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", - "test.codeowners" : "[\"owner1\",\"owner2\"]", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_suite_end", - "test.suite" : "org.example.TestFailedBeforeParam", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.module" : "junit-4.13", + "test.source.file" : "dummy_source_path", + "test.status" : "skip", + "test.suite" : "org.example.TestFailedBeforeParam", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, + "test.source.end" : 19, + "test.source.start" : 11 + }, + "name" : "junit.test_suite", + "resource" : "org.example.TestFailedBeforeParam", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_3}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id} + }, + "type" : "test_suite_end", + "version" : 1 }, { - "type" : "span", - "version" : 1, "content" : { - "trace_id" : ${content_test_session_id}, - "span_id" : ${content_span_id}, - "parent_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "setup", - "resource" : "setup", - "start" : ${content_start_4}, "duration" : ${content_duration_4}, "error" : 1, - "metrics" : { }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_4}, + "env" : "none", + "error.message" : ${content_meta_error_message}, "error.stack" : ${content_meta_error_stack}, - "test.callback" : "BeforeParam", - "library_version" : ${content_meta_library_version}, "error.type" : "java.lang.RuntimeException", - "env" : "none", - "error.message" : ${content_meta_error_message} - } - } -}, { - "type" : "span", - "version" : 1, - "content" : { - "trace_id" : ${content_test_session_id}, - "span_id" : ${content_span_id_2}, - "parent_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "library_version" : ${content_meta_library_version}, + "test.callback" : "BeforeParam" + }, + "metrics" : { }, "name" : "setup", + "parent_id" : ${content_test_suite_id}, "resource" : "setup", - "start" : ${content_start_5}, + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id}, + "start" : ${content_start_4}, + "trace_id" : ${content_test_session_id} + }, + "type" : "span", + "version" : 1 +}, { + "content" : { "duration" : ${content_duration_5}, "error" : 1, - "metrics" : { }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_5}, + "env" : "none", + "error.message" : ${content_meta_error_message}, "error.stack" : ${content_meta_error_stack_2}, - "test.callback" : "BeforeParam", - "library_version" : ${content_meta_library_version}, "error.type" : "java.lang.RuntimeException", - "env" : "none", - "error.message" : ${content_meta_error_message} - } - } -}, { - "type" : "span", - "version" : 1, - "content" : { - "trace_id" : ${content_test_session_id}, - "span_id" : ${content_span_id_3}, + "library_version" : ${content_meta_library_version}, + "test.callback" : "BeforeParam" + }, + "metrics" : { }, + "name" : "setup", "parent_id" : ${content_test_suite_id}, + "resource" : "setup", "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "tearDown", - "resource" : "tearDown", - "start" : ${content_start_6}, + "span_id" : ${content_span_id_2}, + "start" : ${content_start_5}, + "trace_id" : ${content_test_session_id} + }, + "type" : "span", + "version" : 1 +}, { + "content" : { "duration" : ${content_duration_6}, "error" : 0, - "metrics" : { }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_6}, - "test.callback" : "AfterParam", + "env" : "none", "library_version" : ${content_meta_library_version}, - "env" : "none" - } - } -}, { - "type" : "span", - "version" : 1, - "content" : { - "trace_id" : ${content_test_session_id}, - "span_id" : ${content_span_id_4}, - "parent_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "test.callback" : "AfterParam" + }, + "metrics" : { }, "name" : "tearDown", + "parent_id" : ${content_test_suite_id}, "resource" : "tearDown", - "start" : ${content_start_7}, + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_3}, + "start" : ${content_start_6}, + "trace_id" : ${content_test_session_id} + }, + "type" : "span", + "version" : 1 +}, { + "content" : { "duration" : ${content_duration_7}, "error" : 0, - "metrics" : { }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_7}, - "test.callback" : "AfterParam", + "env" : "none", "library_version" : ${content_meta_library_version}, - "env" : "none" - } - } + "test.callback" : "AfterParam" + }, + "metrics" : { }, + "name" : "tearDown", + "parent_id" : ${content_test_suite_id}, + "resource" : "tearDown", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_4}, + "start" : ${content_start_7}, + "trace_id" : ${content_test_session_id} + }, + "type" : "span", + "version" : 1 } ] \ No newline at end of file diff --git a/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-before/events.ftl b/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-before/events.ftl index 8ffd3be0f0e..b3d66d51728 100644 --- a/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-before/events.ftl +++ b/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-failed-before/events.ftl @@ -1,249 +1,249 @@ [ { - "type" : "test_session_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_session", - "resource" : "junit-4.13", - "start" : ${content_start}, "duration" : ${content_duration}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid}, - "test.type" : "test", + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.status" : "fail", - "test_session.name" : "session-name", - "language" : "jvm", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", + "language" : "jvm", "library_version" : ${content_meta_library_version}, - "component" : "junit", - "_dd.profiling.ctx" : "test", - "span.kind" : "test_session_end", "runtime-id" : ${content_meta_runtime_id}, + "span.kind" : "test_session_end", "test.command" : "junit-4.13", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.status" : "fail", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id} + }, + "name" : "junit.test_session", + "resource" : "junit-4.13", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_session_end", + "version" : 1 }, { - "type" : "test_module_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_module", - "resource" : "junit-4.13", - "start" : ${content_start_2}, "duration" : ${content_duration_2}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_2}, - "test.type" : "test", - "test.module" : "junit-4.13", - "test.status" : "fail", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_module_end", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.module" : "junit-4.13", + "test.status" : "fail", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} + }, + "name" : "junit.test_module", + "resource" : "junit-4.13", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_2}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_module_end", + "version" : 1 }, { - "type" : "test_suite_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_suite", - "resource" : "org.example.TestFailedBefore", - "start" : ${content_start_3}, "duration" : ${content_duration_3}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, - "test.source.end" : 19, - "test.source.start" : 11 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_3}, - "test.type" : "test", - "test.source.file" : "dummy_source_path", - "test.module" : "junit-4.13", - "test.status" : "fail", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", - "test.codeowners" : "[\"owner1\",\"owner2\"]", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_suite_end", - "test.suite" : "org.example.TestFailedBefore", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.module" : "junit-4.13", + "test.source.file" : "dummy_source_path", + "test.status" : "fail", + "test.suite" : "org.example.TestFailedBefore", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, + "test.source.end" : 19, + "test.source.start" : 11 + }, + "name" : "junit.test_suite", + "resource" : "org.example.TestFailedBefore", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_3}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id} + }, + "type" : "test_suite_end", + "version" : 1 }, { - "type" : "test", - "version" : 2, "content" : { - "trace_id" : ${content_trace_id}, - "span_id" : ${content_span_id}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestFailedBefore.another_test_succeed", - "start" : ${content_start_4}, "duration" : ${content_duration_4}, "error" : 1, - "metrics" : { - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, - "test.source.end" : 18, - "test.source.start" : 12 - }, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "another_test_succeed()V", - "test.module" : "junit-4.13", - "test.status" : "fail", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", + "error.message" : ${content_meta_error_message}, + "error.stack" : ${content_meta_error_stack}, + "error.type" : "java.lang.RuntimeException", "language" : "jvm", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "another_test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit4", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.module" : "junit-4.13", + "test.name" : "another_test_succeed", + "test.source.file" : "dummy_source_path", + "test.source.method" : "another_test_succeed()V", + "test.status" : "fail", "test.suite" : "org.example.TestFailedBefore", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "component" : "junit", - "error.type" : "java.lang.RuntimeException", - "_dd.profiling.ctx" : "test", - "error.message" : ${content_meta_error_message}, - "error.stack" : ${content_meta_error_stack}, - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } -}, { - "type" : "test", - "version" : 2, - "content" : { - "trace_id" : ${content_trace_id_2}, - "span_id" : ${content_span_id_2}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestFailedBefore.test_succeed", - "start" : ${content_start_5}, - "duration" : ${content_duration_5}, - "error" : 1, + "test_session.name" : "session-name" + }, "metrics" : { - "process_id" : ${content_metrics_process_id}, + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, "_dd.profiling.enabled" : 0, "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "process_id" : ${content_metrics_process_id}, "test.source.end" : 18, "test.source.start" : 12 }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestFailedBefore.another_test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id}, + "start" : ${content_start_4}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id} + }, + "type" : "test", + "version" : 2 +}, { + "content" : { + "duration" : ${content_duration_5}, + "error" : 1, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "test_succeed()V", - "test.module" : "junit-4.13", - "test.status" : "fail", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", + "error.message" : ${content_meta_error_message}, + "error.stack" : ${content_meta_error_stack_2}, + "error.type" : "java.lang.RuntimeException", "language" : "jvm", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit4", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.module" : "junit-4.13", + "test.name" : "test_succeed", + "test.source.file" : "dummy_source_path", + "test.source.method" : "test_succeed()V", + "test.status" : "fail", "test.suite" : "org.example.TestFailedBefore", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "component" : "junit", - "error.type" : "java.lang.RuntimeException", - "_dd.profiling.ctx" : "test", - "error.message" : ${content_meta_error_message}, - "error.stack" : ${content_meta_error_stack_2}, - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id}, + "test.source.end" : 18, + "test.source.start" : 12 + }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestFailedBefore.test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_2}, + "start" : ${content_start_5}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id_2} + }, + "type" : "test", + "version" : 2 }, { - "type" : "span", - "version" : 1, "content" : { - "trace_id" : ${content_trace_id_2}, - "span_id" : ${content_span_id_3}, - "parent_id" : ${content_span_id_2}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "setup", - "resource" : "setup", - "start" : ${content_start_6}, "duration" : ${content_duration_6}, "error" : 1, - "metrics" : { }, "meta" : { + "env" : "none", + "error.message" : ${content_meta_error_message}, "error.stack" : ${content_meta_error_stack_3}, - "test.callback" : "Before", - "library_version" : ${content_meta_library_version}, "error.type" : "java.lang.RuntimeException", - "env" : "none", - "error.message" : ${content_meta_error_message} - } - } -}, { - "type" : "span", - "version" : 1, - "content" : { - "trace_id" : ${content_trace_id}, - "span_id" : ${content_span_id_4}, - "parent_id" : ${content_span_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "library_version" : ${content_meta_library_version}, + "test.callback" : "Before" + }, + "metrics" : { }, "name" : "setup", + "parent_id" : ${content_span_id_2}, "resource" : "setup", - "start" : ${content_start_7}, + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_3}, + "start" : ${content_start_6}, + "trace_id" : ${content_trace_id_2} + }, + "type" : "span", + "version" : 1 +}, { + "content" : { "duration" : ${content_duration_7}, "error" : 1, - "metrics" : { }, "meta" : { + "env" : "none", + "error.message" : ${content_meta_error_message}, "error.stack" : ${content_meta_error_stack_4}, - "test.callback" : "Before", - "library_version" : ${content_meta_library_version}, "error.type" : "java.lang.RuntimeException", - "env" : "none", - "error.message" : ${content_meta_error_message} - } - } + "library_version" : ${content_meta_library_version}, + "test.callback" : "Before" + }, + "metrics" : { }, + "name" : "setup", + "parent_id" : ${content_span_id}, + "resource" : "setup", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_4}, + "start" : ${content_start_7}, + "trace_id" : ${content_trace_id} + }, + "type" : "span", + "version" : 1 } ] \ No newline at end of file diff --git a/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-succeed-before-after/events.ftl b/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-succeed-before-after/events.ftl index 4d08b025bb8..2934d64a75e 100644 --- a/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-succeed-before-after/events.ftl +++ b/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-succeed-before-after/events.ftl @@ -1,277 +1,277 @@ [ { - "type" : "test_session_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_session", - "resource" : "junit-4.13", - "start" : ${content_start}, "duration" : ${content_duration}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid}, - "test.type" : "test", + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.status" : "pass", - "test_session.name" : "session-name", - "language" : "jvm", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", + "language" : "jvm", "library_version" : ${content_meta_library_version}, - "component" : "junit", - "_dd.profiling.ctx" : "test", - "span.kind" : "test_session_end", "runtime-id" : ${content_meta_runtime_id}, + "span.kind" : "test_session_end", "test.command" : "junit-4.13", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.status" : "pass", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id} + }, + "name" : "junit.test_session", + "resource" : "junit-4.13", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_session_end", + "version" : 1 }, { - "type" : "test_module_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_module", - "resource" : "junit-4.13", - "start" : ${content_start_2}, "duration" : ${content_duration_2}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_2}, - "test.type" : "test", - "test.module" : "junit-4.13", - "test.status" : "pass", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_module_end", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.module" : "junit-4.13", + "test.status" : "pass", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} + }, + "name" : "junit.test_module", + "resource" : "junit-4.13", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_2}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_module_end", + "version" : 1 }, { - "type" : "test_suite_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_suite", - "resource" : "org.example.TestSucceedBeforeAfter", - "start" : ${content_start_3}, "duration" : ${content_duration_3}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, - "test.source.end" : 19, - "test.source.start" : 11 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_3}, - "test.type" : "test", - "test.source.file" : "dummy_source_path", - "test.module" : "junit-4.13", - "test.status" : "pass", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", - "test.codeowners" : "[\"owner1\",\"owner2\"]", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_suite_end", - "test.suite" : "org.example.TestSucceedBeforeAfter", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.module" : "junit-4.13", + "test.source.file" : "dummy_source_path", + "test.status" : "pass", + "test.suite" : "org.example.TestSucceedBeforeAfter", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, + "test.source.end" : 19, + "test.source.start" : 11 + }, + "name" : "junit.test_suite", + "resource" : "org.example.TestSucceedBeforeAfter", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_3}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id} + }, + "type" : "test_suite_end", + "version" : 1 }, { - "type" : "test", - "version" : 2, "content" : { - "trace_id" : ${content_trace_id}, - "span_id" : ${content_span_id}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestSucceedBeforeAfter.another_test_succeed", - "start" : ${content_start_4}, "duration" : ${content_duration_4}, "error" : 0, - "metrics" : { - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, - "test.source.end" : 18, - "test.source.start" : 12 - }, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "another_test_succeed()V", - "test.module" : "junit-4.13", - "test.status" : "pass", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "language" : "jvm", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "another_test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit4", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.module" : "junit-4.13", + "test.name" : "another_test_succeed", + "test.source.file" : "dummy_source_path", + "test.source.method" : "another_test_succeed()V", + "test.status" : "pass", "test.suite" : "org.example.TestSucceedBeforeAfter", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "component" : "junit", - "_dd.profiling.ctx" : "test", - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } -}, { - "type" : "test", - "version" : 2, - "content" : { - "trace_id" : ${content_trace_id_2}, - "span_id" : ${content_span_id_2}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestSucceedBeforeAfter.test_succeed", - "start" : ${content_start_5}, - "duration" : ${content_duration_5}, - "error" : 0, + "test_session.name" : "session-name" + }, "metrics" : { - "process_id" : ${content_metrics_process_id}, + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, "_dd.profiling.enabled" : 0, "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "process_id" : ${content_metrics_process_id}, "test.source.end" : 18, "test.source.start" : 12 }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestSucceedBeforeAfter.another_test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id}, + "start" : ${content_start_4}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id} + }, + "type" : "test", + "version" : 2 +}, { + "content" : { + "duration" : ${content_duration_5}, + "error" : 0, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "test_succeed()V", - "test.module" : "junit-4.13", - "test.status" : "pass", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "language" : "jvm", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit4", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.module" : "junit-4.13", + "test.name" : "test_succeed", + "test.source.file" : "dummy_source_path", + "test.source.method" : "test_succeed()V", + "test.status" : "pass", "test.suite" : "org.example.TestSucceedBeforeAfter", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "component" : "junit", - "_dd.profiling.ctx" : "test", - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id}, + "test.source.end" : 18, + "test.source.start" : 12 + }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestSucceedBeforeAfter.test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_2}, + "start" : ${content_start_5}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id_2} + }, + "type" : "test", + "version" : 2 }, { - "type" : "span", - "version" : 1, "content" : { - "trace_id" : ${content_trace_id_2}, - "span_id" : ${content_span_id_3}, - "parent_id" : ${content_span_id_2}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "setup", - "resource" : "setup", - "start" : ${content_start_6}, "duration" : ${content_duration_6}, "error" : 0, - "metrics" : { }, "meta" : { - "test.callback" : "Before", + "env" : "none", "library_version" : ${content_meta_library_version}, - "env" : "none" - } - } -}, { - "type" : "span", - "version" : 1, - "content" : { - "trace_id" : ${content_trace_id}, - "span_id" : ${content_span_id_4}, - "parent_id" : ${content_span_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "test.callback" : "Before" + }, + "metrics" : { }, "name" : "setup", + "parent_id" : ${content_span_id_2}, "resource" : "setup", - "start" : ${content_start_7}, + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_3}, + "start" : ${content_start_6}, + "trace_id" : ${content_trace_id_2} + }, + "type" : "span", + "version" : 1 +}, { + "content" : { "duration" : ${content_duration_7}, "error" : 0, - "metrics" : { }, "meta" : { - "test.callback" : "Before", + "env" : "none", "library_version" : ${content_meta_library_version}, - "env" : "none" - } - } -}, { + "test.callback" : "Before" + }, + "metrics" : { }, + "name" : "setup", + "parent_id" : ${content_span_id}, + "resource" : "setup", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_4}, + "start" : ${content_start_7}, + "trace_id" : ${content_trace_id} + }, "type" : "span", - "version" : 1, + "version" : 1 +}, { "content" : { - "trace_id" : ${content_trace_id_2}, - "span_id" : ${content_span_id_5}, - "parent_id" : ${content_span_id_2}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "tearDown", - "resource" : "tearDown", - "start" : ${content_start_8}, "duration" : ${content_duration_8}, "error" : 0, - "metrics" : { }, "meta" : { - "test.callback" : "After", + "env" : "none", "library_version" : ${content_meta_library_version}, - "env" : "none" - } - } -}, { - "type" : "span", - "version" : 1, - "content" : { - "trace_id" : ${content_trace_id}, - "span_id" : ${content_span_id_6}, - "parent_id" : ${content_span_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "test.callback" : "After" + }, + "metrics" : { }, "name" : "tearDown", + "parent_id" : ${content_span_id_2}, "resource" : "tearDown", - "start" : ${content_start_9}, + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_5}, + "start" : ${content_start_8}, + "trace_id" : ${content_trace_id_2} + }, + "type" : "span", + "version" : 1 +}, { + "content" : { "duration" : ${content_duration_9}, "error" : 0, - "metrics" : { }, "meta" : { - "test.callback" : "After", + "env" : "none", "library_version" : ${content_meta_library_version}, - "env" : "none" - } - } + "test.callback" : "After" + }, + "metrics" : { }, + "name" : "tearDown", + "parent_id" : ${content_span_id}, + "resource" : "tearDown", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_6}, + "start" : ${content_start_9}, + "trace_id" : ${content_trace_id} + }, + "type" : "span", + "version" : 1 } ] \ No newline at end of file diff --git a/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-succeed-before-class-after-class/events.ftl b/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-succeed-before-class-after-class/events.ftl index 03682ac982c..1b469df92ab 100644 --- a/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-succeed-before-class-after-class/events.ftl +++ b/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-succeed-before-class-after-class/events.ftl @@ -1,239 +1,239 @@ [ { - "type" : "test_session_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_session", - "resource" : "junit-4.13", - "start" : ${content_start}, "duration" : ${content_duration}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid}, - "test.type" : "test", + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.status" : "pass", - "test_session.name" : "session-name", - "language" : "jvm", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", + "language" : "jvm", "library_version" : ${content_meta_library_version}, - "component" : "junit", - "_dd.profiling.ctx" : "test", - "span.kind" : "test_session_end", "runtime-id" : ${content_meta_runtime_id}, + "span.kind" : "test_session_end", "test.command" : "junit-4.13", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.status" : "pass", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id} + }, + "name" : "junit.test_session", + "resource" : "junit-4.13", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_session_end", + "version" : 1 }, { - "type" : "test_module_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_module", - "resource" : "junit-4.13", - "start" : ${content_start_2}, "duration" : ${content_duration_2}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_2}, - "test.type" : "test", - "test.module" : "junit-4.13", - "test.status" : "pass", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_module_end", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.module" : "junit-4.13", + "test.status" : "pass", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} + }, + "name" : "junit.test_module", + "resource" : "junit-4.13", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_2}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_module_end", + "version" : 1 }, { - "type" : "test_suite_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_suite", - "resource" : "org.example.TestSucceedBeforeClassAfterClass", - "start" : ${content_start_3}, "duration" : ${content_duration_3}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, - "test.source.end" : 19, - "test.source.start" : 11 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_3}, - "test.type" : "test", - "test.source.file" : "dummy_source_path", - "test.module" : "junit-4.13", - "test.status" : "pass", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", - "test.codeowners" : "[\"owner1\",\"owner2\"]", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_suite_end", - "test.suite" : "org.example.TestSucceedBeforeClassAfterClass", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.module" : "junit-4.13", + "test.source.file" : "dummy_source_path", + "test.status" : "pass", + "test.suite" : "org.example.TestSucceedBeforeClassAfterClass", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, + "test.source.end" : 19, + "test.source.start" : 11 + }, + "name" : "junit.test_suite", + "resource" : "org.example.TestSucceedBeforeClassAfterClass", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_3}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id} + }, + "type" : "test_suite_end", + "version" : 1 }, { - "type" : "test", - "version" : 2, "content" : { - "trace_id" : ${content_trace_id}, - "span_id" : ${content_span_id}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestSucceedBeforeClassAfterClass.another_test_succeed", - "start" : ${content_start_4}, "duration" : ${content_duration_4}, "error" : 0, - "metrics" : { - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, - "test.source.end" : 18, - "test.source.start" : 12 - }, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "another_test_succeed()V", - "test.module" : "junit-4.13", - "test.status" : "pass", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "language" : "jvm", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "another_test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit4", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.module" : "junit-4.13", + "test.name" : "another_test_succeed", + "test.source.file" : "dummy_source_path", + "test.source.method" : "another_test_succeed()V", + "test.status" : "pass", "test.suite" : "org.example.TestSucceedBeforeClassAfterClass", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "component" : "junit", - "_dd.profiling.ctx" : "test", - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } -}, { - "type" : "test", - "version" : 2, - "content" : { - "trace_id" : ${content_trace_id_2}, - "span_id" : ${content_span_id_2}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestSucceedBeforeClassAfterClass.test_succeed", - "start" : ${content_start_5}, - "duration" : ${content_duration_5}, - "error" : 0, + "test_session.name" : "session-name" + }, "metrics" : { - "process_id" : ${content_metrics_process_id}, + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, "_dd.profiling.enabled" : 0, "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "process_id" : ${content_metrics_process_id}, "test.source.end" : 18, "test.source.start" : 12 }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestSucceedBeforeClassAfterClass.another_test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id}, + "start" : ${content_start_4}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id} + }, + "type" : "test", + "version" : 2 +}, { + "content" : { + "duration" : ${content_duration_5}, + "error" : 0, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "test_succeed()V", - "test.module" : "junit-4.13", - "test.status" : "pass", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "language" : "jvm", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit4", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.module" : "junit-4.13", + "test.name" : "test_succeed", + "test.source.file" : "dummy_source_path", + "test.source.method" : "test_succeed()V", + "test.status" : "pass", "test.suite" : "org.example.TestSucceedBeforeClassAfterClass", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "component" : "junit", - "_dd.profiling.ctx" : "test", - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id}, + "test.source.end" : 18, + "test.source.start" : 12 + }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestSucceedBeforeClassAfterClass.test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_2}, + "start" : ${content_start_5}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id_2} + }, + "type" : "test", + "version" : 2 }, { - "type" : "span", - "version" : 1, "content" : { - "trace_id" : ${content_test_session_id}, - "span_id" : ${content_span_id_3}, - "parent_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "setup", - "resource" : "setup", - "start" : ${content_start_6}, "duration" : ${content_duration_6}, "error" : 0, - "metrics" : { }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_4}, - "test.callback" : "BeforeClass", + "env" : "none", "library_version" : ${content_meta_library_version}, - "env" : "none" - } - } -}, { - "type" : "span", - "version" : 1, - "content" : { - "trace_id" : ${content_test_session_id}, - "span_id" : ${content_span_id_4}, + "test.callback" : "BeforeClass" + }, + "metrics" : { }, + "name" : "setup", "parent_id" : ${content_test_suite_id}, + "resource" : "setup", "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "tearDown", - "resource" : "tearDown", - "start" : ${content_start_7}, + "span_id" : ${content_span_id_3}, + "start" : ${content_start_6}, + "trace_id" : ${content_test_session_id} + }, + "type" : "span", + "version" : 1 +}, { + "content" : { "duration" : ${content_duration_7}, "error" : 0, - "metrics" : { }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_5}, - "test.callback" : "AfterClass", + "env" : "none", "library_version" : ${content_meta_library_version}, - "env" : "none" - } - } + "test.callback" : "AfterClass" + }, + "metrics" : { }, + "name" : "tearDown", + "parent_id" : ${content_test_suite_id}, + "resource" : "tearDown", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_4}, + "start" : ${content_start_7}, + "trace_id" : ${content_test_session_id} + }, + "type" : "span", + "version" : 1 } ] \ No newline at end of file diff --git a/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-succeed-before-param-after-param/events.ftl b/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-succeed-before-param-after-param/events.ftl index d74bcbb5294..8181de476b5 100644 --- a/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-succeed-before-param-after-param/events.ftl +++ b/dd-java-agent/instrumentation/junit-4.10/junit-4.13/src/test/resources/test-succeed-before-param-after-param/events.ftl @@ -1,283 +1,283 @@ [ { - "type" : "test_session_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_session", - "resource" : "junit-4.13", - "start" : ${content_start}, "duration" : ${content_duration}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid}, - "test.type" : "test", + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.status" : "pass", - "test_session.name" : "session-name", - "language" : "jvm", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", + "language" : "jvm", "library_version" : ${content_meta_library_version}, - "component" : "junit", - "_dd.profiling.ctx" : "test", - "span.kind" : "test_session_end", "runtime-id" : ${content_meta_runtime_id}, + "span.kind" : "test_session_end", "test.command" : "junit-4.13", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.status" : "pass", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id} + }, + "name" : "junit.test_session", + "resource" : "junit-4.13", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_session_end", + "version" : 1 }, { - "type" : "test_module_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_module", - "resource" : "junit-4.13", - "start" : ${content_start_2}, "duration" : ${content_duration_2}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_2}, - "test.type" : "test", - "test.module" : "junit-4.13", - "test.status" : "pass", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_module_end", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.module" : "junit-4.13", + "test.status" : "pass", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} + }, + "name" : "junit.test_module", + "resource" : "junit-4.13", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_2}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_module_end", + "version" : 1 }, { - "type" : "test_suite_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_suite", - "resource" : "org.example.TestSucceedBeforeParamAfterParam", - "start" : ${content_start_3}, "duration" : ${content_duration_3}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, - "test.source.end" : 19, - "test.source.start" : 11 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_3}, - "test.type" : "test", - "test.source.file" : "dummy_source_path", - "test.module" : "junit-4.13", - "test.status" : "pass", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", - "test.codeowners" : "[\"owner1\",\"owner2\"]", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_suite_end", - "test.suite" : "org.example.TestSucceedBeforeParamAfterParam", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test.module" : "junit-4.13", + "test.source.file" : "dummy_source_path", + "test.status" : "pass", + "test.suite" : "org.example.TestSucceedBeforeParamAfterParam", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, + "test.source.end" : 19, + "test.source.start" : 11 + }, + "name" : "junit.test_suite", + "resource" : "org.example.TestSucceedBeforeParamAfterParam", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_3}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id} + }, + "type" : "test_suite_end", + "version" : 1 }, { - "type" : "test", - "version" : 2, "content" : { - "trace_id" : ${content_trace_id}, - "span_id" : ${content_span_id}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestSucceedBeforeParamAfterParam.parameterized_test_succeed", - "start" : ${content_start_4}, "duration" : ${content_duration_4}, "error" : 0, - "metrics" : { - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, - "test.source.end" : 18, - "test.source.start" : 12 - }, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "parameterized_test_succeed()V", - "test.module" : "junit-4.13", - "test.status" : "pass", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "language" : "jvm", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "parameterized_test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit4", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.module" : "junit-4.13", + "test.name" : "parameterized_test_succeed", + "test.parameters" : "{\"metadata\":{\"test_name\":\"parameterized_test_succeed[0]\"}}", + "test.source.file" : "dummy_source_path", + "test.source.method" : "parameterized_test_succeed()V", + "test.status" : "pass", "test.suite" : "org.example.TestSucceedBeforeParamAfterParam", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "test.parameters" : "{\"metadata\":{\"test_name\":\"parameterized_test_succeed[0]\"}}", - "component" : "junit", - "_dd.profiling.ctx" : "test", - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } -}, { - "type" : "test", - "version" : 2, - "content" : { - "trace_id" : ${content_trace_id_2}, - "span_id" : ${content_span_id_2}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestSucceedBeforeParamAfterParam.parameterized_test_succeed", - "start" : ${content_start_5}, - "duration" : ${content_duration_5}, - "error" : 0, + "test_session.name" : "session-name" + }, "metrics" : { - "process_id" : ${content_metrics_process_id}, + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, "_dd.profiling.enabled" : 0, "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "process_id" : ${content_metrics_process_id}, "test.source.end" : 18, "test.source.start" : 12 }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestSucceedBeforeParamAfterParam.parameterized_test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id}, + "start" : ${content_start_4}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id} + }, + "type" : "test", + "version" : 2 +}, { + "content" : { + "duration" : ${content_duration_5}, + "error" : 0, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "parameterized_test_succeed()V", - "test.module" : "junit-4.13", - "test.status" : "pass", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "language" : "jvm", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "parameterized_test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit4", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.module" : "junit-4.13", + "test.name" : "parameterized_test_succeed", + "test.parameters" : "{\"metadata\":{\"test_name\":\"parameterized_test_succeed[1]\"}}", + "test.source.file" : "dummy_source_path", + "test.source.method" : "parameterized_test_succeed()V", + "test.status" : "pass", "test.suite" : "org.example.TestSucceedBeforeParamAfterParam", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "test.parameters" : "{\"metadata\":{\"test_name\":\"parameterized_test_succeed[1]\"}}", - "component" : "junit", - "_dd.profiling.ctx" : "test", - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit4" - } - } + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id}, + "test.source.end" : 18, + "test.source.start" : 12 + }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestSucceedBeforeParamAfterParam.parameterized_test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_2}, + "start" : ${content_start_5}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id_2} + }, + "type" : "test", + "version" : 2 }, { - "type" : "span", - "version" : 1, "content" : { - "trace_id" : ${content_test_session_id}, - "span_id" : ${content_span_id_3}, - "parent_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "setup", - "resource" : "setup", - "start" : ${content_start_6}, "duration" : ${content_duration_6}, "error" : 0, - "metrics" : { }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_4}, - "test.callback" : "BeforeParam", + "env" : "none", "library_version" : ${content_meta_library_version}, - "env" : "none" - } - } -}, { - "type" : "span", - "version" : 1, - "content" : { - "trace_id" : ${content_test_session_id}, - "span_id" : ${content_span_id_4}, - "parent_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "test.callback" : "BeforeParam" + }, + "metrics" : { }, "name" : "setup", + "parent_id" : ${content_test_suite_id}, "resource" : "setup", - "start" : ${content_start_7}, + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_3}, + "start" : ${content_start_6}, + "trace_id" : ${content_test_session_id} + }, + "type" : "span", + "version" : 1 +}, { + "content" : { "duration" : ${content_duration_7}, "error" : 0, - "metrics" : { }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_5}, - "test.callback" : "BeforeParam", + "env" : "none", "library_version" : ${content_meta_library_version}, - "env" : "none" - } - } -}, { - "type" : "span", - "version" : 1, - "content" : { - "trace_id" : ${content_test_session_id}, - "span_id" : ${content_span_id_5}, + "test.callback" : "BeforeParam" + }, + "metrics" : { }, + "name" : "setup", "parent_id" : ${content_test_suite_id}, + "resource" : "setup", "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "tearDown", - "resource" : "tearDown", - "start" : ${content_start_8}, + "span_id" : ${content_span_id_4}, + "start" : ${content_start_7}, + "trace_id" : ${content_test_session_id} + }, + "type" : "span", + "version" : 1 +}, { + "content" : { "duration" : ${content_duration_8}, "error" : 0, - "metrics" : { }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_6}, - "test.callback" : "AfterParam", + "env" : "none", "library_version" : ${content_meta_library_version}, - "env" : "none" - } - } -}, { - "type" : "span", - "version" : 1, - "content" : { - "trace_id" : ${content_test_session_id}, - "span_id" : ${content_span_id_6}, - "parent_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "test.callback" : "AfterParam" + }, + "metrics" : { }, "name" : "tearDown", + "parent_id" : ${content_test_suite_id}, "resource" : "tearDown", - "start" : ${content_start_9}, + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_5}, + "start" : ${content_start_8}, + "trace_id" : ${content_test_session_id} + }, + "type" : "span", + "version" : 1 +}, { + "content" : { "duration" : ${content_duration_9}, "error" : 0, - "metrics" : { }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_7}, - "test.callback" : "AfterParam", + "env" : "none", "library_version" : ${content_meta_library_version}, - "env" : "none" - } - } + "test.callback" : "AfterParam" + }, + "metrics" : { }, + "name" : "tearDown", + "parent_id" : ${content_test_suite_id}, + "resource" : "tearDown", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_6}, + "start" : ${content_start_9}, + "trace_id" : ${content_test_session_id} + }, + "type" : "span", + "version" : 1 } ] \ No newline at end of file diff --git a/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/test/groovy/MUnitTest.groovy b/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/test/groovy/MUnitTest.groovy index ab757fcdd80..0e81d910ce4 100644 --- a/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/test/groovy/MUnitTest.groovy +++ b/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/test/groovy/MUnitTest.groovy @@ -80,7 +80,7 @@ class MUnitTest extends CiVisibilityInstrumentationTest { } def "test quarantined #testcaseName"() { - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) runTests(tests, true) @@ -93,7 +93,7 @@ class MUnitTest extends CiVisibilityInstrumentationTest { } def "test quarantined auto-retries #testcaseName"() { - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) givenFlakyRetryEnabled(true) @@ -110,7 +110,7 @@ class MUnitTest extends CiVisibilityInstrumentationTest { } def "test quarantined early flakiness detection #testcaseName"() { - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) givenEarlyFlakinessDetectionEnabled(true) diff --git a/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/test/resources/test-quarantined-failed-atr/events.ftl b/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/test/resources/test-quarantined-failed-atr/events.ftl index 04497596505..98dbb49f3cd 100644 --- a/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/test/resources/test-quarantined-failed-atr/events.ftl +++ b/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/test/resources/test-quarantined-failed-atr/events.ftl @@ -17,6 +17,7 @@ "test.framework" : "munit", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -49,6 +50,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "munit-junit-4", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/test/resources/test-quarantined-failed-efd/events.ftl b/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/test/resources/test-quarantined-failed-efd/events.ftl index 571e11423f8..40b5ab897ce 100644 --- a/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/test/resources/test-quarantined-failed-efd/events.ftl +++ b/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/test/resources/test-quarantined-failed-efd/events.ftl @@ -18,6 +18,7 @@ "test.framework" : "munit", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -51,6 +52,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "munit-junit-4", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/test/resources/test-quarantined-failed-known/events.ftl b/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/test/resources/test-quarantined-failed-known/events.ftl index 773f3cfd3f8..73c135c74fd 100644 --- a/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/test/resources/test-quarantined-failed-known/events.ftl +++ b/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/test/resources/test-quarantined-failed-known/events.ftl @@ -18,6 +18,7 @@ "test.framework" : "munit", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -51,6 +52,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "munit-junit-4", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/test/resources/test-quarantined-failed/events.ftl b/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/test/resources/test-quarantined-failed/events.ftl index 84feb9b6f22..b2746c28117 100644 --- a/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/test/resources/test-quarantined-failed/events.ftl +++ b/dd-java-agent/instrumentation/junit-4.10/munit-junit-4/src/test/resources/test-quarantined-failed/events.ftl @@ -17,6 +17,7 @@ "test.framework" : "munit", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -49,6 +50,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "munit-junit-4", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-4.10/src/test/groovy/JUnit4Test.groovy b/dd-java-agent/instrumentation/junit-4.10/src/test/groovy/JUnit4Test.groovy index 54d352f7156..fe4229e373b 100644 --- a/dd-java-agent/instrumentation/junit-4.10/src/test/groovy/JUnit4Test.groovy +++ b/dd-java-agent/instrumentation/junit-4.10/src/test/groovy/JUnit4Test.groovy @@ -127,7 +127,7 @@ class JUnit4Test extends CiVisibilityInstrumentationTest { } def "test quarantined #testcaseName"() { - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) runTests(tests, true) @@ -141,7 +141,7 @@ class JUnit4Test extends CiVisibilityInstrumentationTest { } def "test quarantined auto-retries #testcaseName"() { - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) givenFlakyRetryEnabled(true) @@ -158,7 +158,7 @@ class JUnit4Test extends CiVisibilityInstrumentationTest { } def "test quarantined early flakiness detection #testcaseName"() { - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) givenEarlyFlakinessDetectionEnabled(true) diff --git a/dd-java-agent/instrumentation/junit-4.10/src/test/resources/test-quarantined-failed-atr/events.ftl b/dd-java-agent/instrumentation/junit-4.10/src/test/resources/test-quarantined-failed-atr/events.ftl index 01e9eb9ba7c..2aedb07c62e 100644 --- a/dd-java-agent/instrumentation/junit-4.10/src/test/resources/test-quarantined-failed-atr/events.ftl +++ b/dd-java-agent/instrumentation/junit-4.10/src/test/resources/test-quarantined-failed-atr/events.ftl @@ -17,6 +17,7 @@ "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -49,6 +50,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "junit-4.10", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-4.10/src/test/resources/test-quarantined-failed-efd/events.ftl b/dd-java-agent/instrumentation/junit-4.10/src/test/resources/test-quarantined-failed-efd/events.ftl index f1b6e55176f..8b8a874e065 100644 --- a/dd-java-agent/instrumentation/junit-4.10/src/test/resources/test-quarantined-failed-efd/events.ftl +++ b/dd-java-agent/instrumentation/junit-4.10/src/test/resources/test-quarantined-failed-efd/events.ftl @@ -18,6 +18,7 @@ "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -51,6 +52,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "junit-4.10", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-4.10/src/test/resources/test-quarantined-failed-known/events.ftl b/dd-java-agent/instrumentation/junit-4.10/src/test/resources/test-quarantined-failed-known/events.ftl index 837ccef8468..a6573e540be 100644 --- a/dd-java-agent/instrumentation/junit-4.10/src/test/resources/test-quarantined-failed-known/events.ftl +++ b/dd-java-agent/instrumentation/junit-4.10/src/test/resources/test-quarantined-failed-known/events.ftl @@ -18,6 +18,7 @@ "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -51,6 +52,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "junit-4.10", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-4.10/src/test/resources/test-quarantined-failed-parameterized/events.ftl b/dd-java-agent/instrumentation/junit-4.10/src/test/resources/test-quarantined-failed-parameterized/events.ftl index 2e1945b0a8b..e20c3d1c73e 100644 --- a/dd-java-agent/instrumentation/junit-4.10/src/test/resources/test-quarantined-failed-parameterized/events.ftl +++ b/dd-java-agent/instrumentation/junit-4.10/src/test/resources/test-quarantined-failed-parameterized/events.ftl @@ -17,6 +17,7 @@ "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -49,6 +50,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "junit-4.10", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-4.10/src/test/resources/test-quarantined-failed/events.ftl b/dd-java-agent/instrumentation/junit-4.10/src/test/resources/test-quarantined-failed/events.ftl index 743ea4e0b55..6e9ec79858a 100644 --- a/dd-java-agent/instrumentation/junit-4.10/src/test/resources/test-quarantined-failed/events.ftl +++ b/dd-java-agent/instrumentation/junit-4.10/src/test/resources/test-quarantined-failed/events.ftl @@ -17,6 +17,7 @@ "test.framework" : "junit4", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -49,6 +50,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "junit-4.10", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-5.3/cucumber-junit-5/src/test/groovy/CucumberTest.groovy b/dd-java-agent/instrumentation/junit-5.3/cucumber-junit-5/src/test/groovy/CucumberTest.groovy index 0c370fa1e10..80dfe6be817 100644 --- a/dd-java-agent/instrumentation/junit-5.3/cucumber-junit-5/src/test/groovy/CucumberTest.groovy +++ b/dd-java-agent/instrumentation/junit-5.3/cucumber-junit-5/src/test/groovy/CucumberTest.groovy @@ -100,7 +100,7 @@ class CucumberTest extends CiVisibilityInstrumentationTest { } def "test quarantined #testcaseName"() { - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) runFeatures(features, false, true) @@ -115,7 +115,7 @@ class CucumberTest extends CiVisibilityInstrumentationTest { } def "test quarantined auto-retries #testcaseName"() { - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) givenFlakyRetryEnabled(true) @@ -136,7 +136,7 @@ class CucumberTest extends CiVisibilityInstrumentationTest { } def "test quarantined early flakiness detection #testcaseName"() { - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) givenEarlyFlakinessDetectionEnabled(true) diff --git a/dd-java-agent/instrumentation/junit-5.3/cucumber-junit-5/src/test/resources/test-quarantined-failed-atr/events.ftl b/dd-java-agent/instrumentation/junit-5.3/cucumber-junit-5/src/test/resources/test-quarantined-failed-atr/events.ftl index d3b57289a18..b50f425d4c5 100644 --- a/dd-java-agent/instrumentation/junit-5.3/cucumber-junit-5/src/test/resources/test-quarantined-failed-atr/events.ftl +++ b/dd-java-agent/instrumentation/junit-5.3/cucumber-junit-5/src/test/resources/test-quarantined-failed-atr/events.ftl @@ -293,6 +293,7 @@ "test.framework" : "cucumber", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -325,6 +326,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "cucumber-junit-5", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-5.3/cucumber-junit-5/src/test/resources/test-quarantined-failed-efd/events.ftl b/dd-java-agent/instrumentation/junit-5.3/cucumber-junit-5/src/test/resources/test-quarantined-failed-efd/events.ftl index 0aae442aa7b..597e8d6c292 100644 --- a/dd-java-agent/instrumentation/junit-5.3/cucumber-junit-5/src/test/resources/test-quarantined-failed-efd/events.ftl +++ b/dd-java-agent/instrumentation/junit-5.3/cucumber-junit-5/src/test/resources/test-quarantined-failed-efd/events.ftl @@ -199,6 +199,7 @@ "test.framework" : "cucumber", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -232,6 +233,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "cucumber-junit-5", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-5.3/cucumber-junit-5/src/test/resources/test-quarantined-failed-known/events.ftl b/dd-java-agent/instrumentation/junit-5.3/cucumber-junit-5/src/test/resources/test-quarantined-failed-known/events.ftl index f128c440822..84d9bf701f2 100644 --- a/dd-java-agent/instrumentation/junit-5.3/cucumber-junit-5/src/test/resources/test-quarantined-failed-known/events.ftl +++ b/dd-java-agent/instrumentation/junit-5.3/cucumber-junit-5/src/test/resources/test-quarantined-failed-known/events.ftl @@ -97,6 +97,7 @@ "test.framework" : "cucumber", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -130,6 +131,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "cucumber-junit-5", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-5.3/cucumber-junit-5/src/test/resources/test-quarantined-failed/events.ftl b/dd-java-agent/instrumentation/junit-5.3/cucumber-junit-5/src/test/resources/test-quarantined-failed/events.ftl index 94bee36a5bd..c83cc0440c6 100644 --- a/dd-java-agent/instrumentation/junit-5.3/cucumber-junit-5/src/test/resources/test-quarantined-failed/events.ftl +++ b/dd-java-agent/instrumentation/junit-5.3/cucumber-junit-5/src/test/resources/test-quarantined-failed/events.ftl @@ -96,6 +96,7 @@ "test.framework" : "cucumber", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -128,6 +129,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "cucumber-junit-5", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-before-all-after-all/events.ftl b/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-before-all-after-all/events.ftl index 66970704b3d..5b7a75f2ac9 100644 --- a/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-before-all-after-all/events.ftl +++ b/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-before-all-after-all/events.ftl @@ -1,241 +1,241 @@ [ { - "type" : "test_session_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_session", - "resource" : "junit-5.8", - "start" : ${content_start}, "duration" : ${content_duration}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid}, - "test.type" : "test", + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.status" : "pass", - "test_session.name" : "session-name", - "language" : "jvm", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", + "language" : "jvm", "library_version" : ${content_meta_library_version}, - "component" : "junit", - "_dd.profiling.ctx" : "test", - "span.kind" : "test_session_end", "runtime-id" : ${content_meta_runtime_id}, + "span.kind" : "test_session_end", "test.command" : "junit-5.8", + "test.framework" : "junit5", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } + "test.status" : "pass", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id} + }, + "name" : "junit.test_session", + "resource" : "junit-5.8", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_session_end", + "version" : 1 }, { - "type" : "test_module_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_module", - "resource" : "junit-5.8", - "start" : ${content_start_2}, "duration" : ${content_duration_2}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_2}, - "test.type" : "test", - "test.module" : "junit-5.8", - "test.status" : "pass", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_module_end", + "test.framework" : "junit5", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } + "test.module" : "junit-5.8", + "test.status" : "pass", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} + }, + "name" : "junit.test_module", + "resource" : "junit-5.8", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_2}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_module_end", + "version" : 1 }, { - "type" : "test_suite_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_suite", - "resource" : "org.example.TestSucceedBeforeAllAfterAll", - "start" : ${content_start_3}, "duration" : ${content_duration_3}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, - "test.source.end" : 19, - "test.source.start" : 11 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_3}, - "test.type" : "test", - "test.source.file" : "dummy_source_path", - "test.module" : "junit-5.8", - "test.status" : "pass", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", - "test.codeowners" : "[\"owner1\",\"owner2\"]", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_suite_end", - "test.suite" : "org.example.TestSucceedBeforeAllAfterAll", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit5", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } + "test.module" : "junit-5.8", + "test.source.file" : "dummy_source_path", + "test.status" : "pass", + "test.suite" : "org.example.TestSucceedBeforeAllAfterAll", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, + "test.source.end" : 19, + "test.source.start" : 11 + }, + "name" : "junit.test_suite", + "resource" : "org.example.TestSucceedBeforeAllAfterAll", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_3}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id} + }, + "type" : "test_suite_end", + "version" : 1 }, { - "type" : "test", - "version" : 2, "content" : { - "trace_id" : ${content_trace_id}, - "span_id" : ${content_span_id}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestSucceedBeforeAllAfterAll.another_test_succeed", - "start" : ${content_start_4}, "duration" : ${content_duration_4}, "error" : 0, - "metrics" : { - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, - "test.source.end" : 18, - "test.source.start" : 12 - }, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "another_test_succeed()V", - "test.module" : "junit-5.8", - "test.status" : "pass", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "language" : "jvm", - "test.is_new" : "true", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "another_test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit5", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.is_new" : "true", + "test.module" : "junit-5.8", + "test.name" : "another_test_succeed", + "test.source.file" : "dummy_source_path", + "test.source.method" : "another_test_succeed()V", + "test.status" : "pass", "test.suite" : "org.example.TestSucceedBeforeAllAfterAll", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "component" : "junit", - "_dd.profiling.ctx" : "test", - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } -}, { - "type" : "test", - "version" : 2, - "content" : { - "trace_id" : ${content_trace_id_2}, - "span_id" : ${content_span_id_2}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestSucceedBeforeAllAfterAll.test_succeed", - "start" : ${content_start_5}, - "duration" : ${content_duration_5}, - "error" : 0, + "test_session.name" : "session-name" + }, "metrics" : { - "process_id" : ${content_metrics_process_id}, + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, "_dd.profiling.enabled" : 0, "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "process_id" : ${content_metrics_process_id}, "test.source.end" : 18, "test.source.start" : 12 }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestSucceedBeforeAllAfterAll.another_test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id}, + "start" : ${content_start_4}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id} + }, + "type" : "test", + "version" : 2 +}, { + "content" : { + "duration" : ${content_duration_5}, + "error" : 0, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "test_succeed()V", - "test.module" : "junit-5.8", - "test.status" : "pass", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "language" : "jvm", - "test.is_new" : "true", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit5", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.is_new" : "true", + "test.module" : "junit-5.8", + "test.name" : "test_succeed", + "test.source.file" : "dummy_source_path", + "test.source.method" : "test_succeed()V", + "test.status" : "pass", "test.suite" : "org.example.TestSucceedBeforeAllAfterAll", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "component" : "junit", - "_dd.profiling.ctx" : "test", - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id}, + "test.source.end" : 18, + "test.source.start" : 12 + }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestSucceedBeforeAllAfterAll.test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_2}, + "start" : ${content_start_5}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id_2} + }, + "type" : "test", + "version" : 2 }, { - "type" : "span", - "version" : 1, "content" : { - "trace_id" : ${content_test_session_id}, - "span_id" : ${content_span_id_3}, - "parent_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "setUp", - "resource" : "setUp", - "start" : ${content_start_6}, "duration" : ${content_duration_6}, "error" : 0, - "metrics" : { }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_4}, - "test.callback" : "BeforeAll", + "env" : "none", "library_version" : ${content_meta_library_version}, - "env" : "none" - } - } -}, { - "type" : "span", - "version" : 1, - "content" : { - "trace_id" : ${content_test_session_id}, - "span_id" : ${content_span_id_4}, + "test.callback" : "BeforeAll" + }, + "metrics" : { }, + "name" : "setUp", "parent_id" : ${content_test_suite_id}, + "resource" : "setUp", "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "tearDown", - "resource" : "tearDown", - "start" : ${content_start_7}, + "span_id" : ${content_span_id_3}, + "start" : ${content_start_6}, + "trace_id" : ${content_test_session_id} + }, + "type" : "span", + "version" : 1 +}, { + "content" : { "duration" : ${content_duration_7}, "error" : 0, - "metrics" : { }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_5}, - "test.callback" : "AfterAll", + "env" : "none", "library_version" : ${content_meta_library_version}, - "env" : "none" - } - } + "test.callback" : "AfterAll" + }, + "metrics" : { }, + "name" : "tearDown", + "parent_id" : ${content_test_suite_id}, + "resource" : "tearDown", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_4}, + "start" : ${content_start_7}, + "trace_id" : ${content_test_session_id} + }, + "type" : "span", + "version" : 1 } ] \ No newline at end of file diff --git a/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-before-each-after-each/events.ftl b/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-before-each-after-each/events.ftl index a0f2336c5ab..6d2c5d5c95c 100644 --- a/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-before-each-after-each/events.ftl +++ b/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-before-each-after-each/events.ftl @@ -1,279 +1,279 @@ [ { - "type" : "test_session_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_session", - "resource" : "junit-5.8", - "start" : ${content_start}, "duration" : ${content_duration}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid}, - "test.type" : "test", + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.status" : "pass", - "test_session.name" : "session-name", - "language" : "jvm", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", + "language" : "jvm", "library_version" : ${content_meta_library_version}, - "component" : "junit", - "_dd.profiling.ctx" : "test", - "span.kind" : "test_session_end", "runtime-id" : ${content_meta_runtime_id}, + "span.kind" : "test_session_end", "test.command" : "junit-5.8", + "test.framework" : "junit5", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } + "test.status" : "pass", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id} + }, + "name" : "junit.test_session", + "resource" : "junit-5.8", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_session_end", + "version" : 1 }, { - "type" : "test_module_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_module", - "resource" : "junit-5.8", - "start" : ${content_start_2}, "duration" : ${content_duration_2}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_2}, - "test.type" : "test", - "test.module" : "junit-5.8", - "test.status" : "pass", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_module_end", + "test.framework" : "junit5", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } + "test.module" : "junit-5.8", + "test.status" : "pass", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} + }, + "name" : "junit.test_module", + "resource" : "junit-5.8", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_2}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_module_end", + "version" : 1 }, { - "type" : "test_suite_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_suite", - "resource" : "org.example.TestSucceedBeforeEachAfterEach", - "start" : ${content_start_3}, "duration" : ${content_duration_3}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, - "test.source.end" : 19, - "test.source.start" : 11 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_3}, - "test.type" : "test", - "test.source.file" : "dummy_source_path", - "test.module" : "junit-5.8", - "test.status" : "pass", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", - "test.codeowners" : "[\"owner1\",\"owner2\"]", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_suite_end", - "test.suite" : "org.example.TestSucceedBeforeEachAfterEach", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit5", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } + "test.module" : "junit-5.8", + "test.source.file" : "dummy_source_path", + "test.status" : "pass", + "test.suite" : "org.example.TestSucceedBeforeEachAfterEach", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, + "test.source.end" : 19, + "test.source.start" : 11 + }, + "name" : "junit.test_suite", + "resource" : "org.example.TestSucceedBeforeEachAfterEach", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_3}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id} + }, + "type" : "test_suite_end", + "version" : 1 }, { - "type" : "test", - "version" : 2, "content" : { - "trace_id" : ${content_trace_id}, - "span_id" : ${content_span_id}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestSucceedBeforeEachAfterEach.another_test_succeed", - "start" : ${content_start_4}, "duration" : ${content_duration_4}, "error" : 0, - "metrics" : { - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, - "test.source.end" : 18, - "test.source.start" : 12 - }, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "another_test_succeed()V", - "test.module" : "junit-5.8", - "test.status" : "pass", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "language" : "jvm", - "test.is_new" : "true", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "another_test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit5", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.is_new" : "true", + "test.module" : "junit-5.8", + "test.name" : "another_test_succeed", + "test.source.file" : "dummy_source_path", + "test.source.method" : "another_test_succeed()V", + "test.status" : "pass", "test.suite" : "org.example.TestSucceedBeforeEachAfterEach", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "component" : "junit", - "_dd.profiling.ctx" : "test", - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } -}, { - "type" : "test", - "version" : 2, - "content" : { - "trace_id" : ${content_trace_id_2}, - "span_id" : ${content_span_id_2}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestSucceedBeforeEachAfterEach.test_succeed", - "start" : ${content_start_5}, - "duration" : ${content_duration_5}, - "error" : 0, + "test_session.name" : "session-name" + }, "metrics" : { - "process_id" : ${content_metrics_process_id}, + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, "_dd.profiling.enabled" : 0, "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "process_id" : ${content_metrics_process_id}, "test.source.end" : 18, "test.source.start" : 12 }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestSucceedBeforeEachAfterEach.another_test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id}, + "start" : ${content_start_4}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id} + }, + "type" : "test", + "version" : 2 +}, { + "content" : { + "duration" : ${content_duration_5}, + "error" : 0, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "test_succeed()V", - "test.module" : "junit-5.8", - "test.status" : "pass", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "language" : "jvm", - "test.is_new" : "true", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit5", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.is_new" : "true", + "test.module" : "junit-5.8", + "test.name" : "test_succeed", + "test.source.file" : "dummy_source_path", + "test.source.method" : "test_succeed()V", + "test.status" : "pass", "test.suite" : "org.example.TestSucceedBeforeEachAfterEach", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "component" : "junit", - "_dd.profiling.ctx" : "test", - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id}, + "test.source.end" : 18, + "test.source.start" : 12 + }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestSucceedBeforeEachAfterEach.test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_2}, + "start" : ${content_start_5}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id_2} + }, + "type" : "test", + "version" : 2 }, { - "type" : "span", - "version" : 1, "content" : { - "trace_id" : ${content_trace_id}, - "span_id" : ${content_span_id_3}, - "parent_id" : ${content_span_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "setUp", - "resource" : "setUp", - "start" : ${content_start_6}, "duration" : ${content_duration_6}, "error" : 0, - "metrics" : { }, "meta" : { - "test.callback" : "BeforeEach", + "env" : "none", "library_version" : ${content_meta_library_version}, - "env" : "none" - } - } -}, { - "type" : "span", - "version" : 1, - "content" : { - "trace_id" : ${content_trace_id_2}, - "span_id" : ${content_span_id_4}, - "parent_id" : ${content_span_id_2}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "test.callback" : "BeforeEach" + }, + "metrics" : { }, "name" : "setUp", + "parent_id" : ${content_span_id}, "resource" : "setUp", - "start" : ${content_start_7}, + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_3}, + "start" : ${content_start_6}, + "trace_id" : ${content_trace_id} + }, + "type" : "span", + "version" : 1 +}, { + "content" : { "duration" : ${content_duration_7}, "error" : 0, - "metrics" : { }, "meta" : { - "test.callback" : "BeforeEach", + "env" : "none", "library_version" : ${content_meta_library_version}, - "env" : "none" - } - } -}, { + "test.callback" : "BeforeEach" + }, + "metrics" : { }, + "name" : "setUp", + "parent_id" : ${content_span_id_2}, + "resource" : "setUp", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_4}, + "start" : ${content_start_7}, + "trace_id" : ${content_trace_id_2} + }, "type" : "span", - "version" : 1, + "version" : 1 +}, { "content" : { - "trace_id" : ${content_trace_id}, - "span_id" : ${content_span_id_5}, - "parent_id" : ${content_span_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "tearDown", - "resource" : "tearDown", - "start" : ${content_start_8}, "duration" : ${content_duration_8}, "error" : 0, - "metrics" : { }, "meta" : { - "test.callback" : "AfterEach", + "env" : "none", "library_version" : ${content_meta_library_version}, - "env" : "none" - } - } -}, { - "type" : "span", - "version" : 1, - "content" : { - "trace_id" : ${content_trace_id_2}, - "span_id" : ${content_span_id_6}, - "parent_id" : ${content_span_id_2}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "test.callback" : "AfterEach" + }, + "metrics" : { }, "name" : "tearDown", + "parent_id" : ${content_span_id}, "resource" : "tearDown", - "start" : ${content_start_9}, + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_5}, + "start" : ${content_start_8}, + "trace_id" : ${content_trace_id} + }, + "type" : "span", + "version" : 1 +}, { + "content" : { "duration" : ${content_duration_9}, "error" : 0, - "metrics" : { }, "meta" : { - "test.callback" : "AfterEach", + "env" : "none", "library_version" : ${content_meta_library_version}, - "env" : "none" - } - } + "test.callback" : "AfterEach" + }, + "metrics" : { }, + "name" : "tearDown", + "parent_id" : ${content_span_id_2}, + "resource" : "tearDown", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_6}, + "start" : ${content_start_9}, + "trace_id" : ${content_trace_id_2} + }, + "type" : "span", + "version" : 1 } ] \ No newline at end of file diff --git a/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-failed-after-all/events.ftl b/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-failed-after-all/events.ftl index a12043d16d6..42a0fcfe47d 100644 --- a/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-failed-after-all/events.ftl +++ b/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-failed-after-all/events.ftl @@ -1,226 +1,226 @@ [ { - "type" : "test_session_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_session", - "resource" : "junit-5.8", - "start" : ${content_start}, "duration" : ${content_duration}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid}, - "test.type" : "test", + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.status" : "fail", - "test_session.name" : "session-name", - "language" : "jvm", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", + "language" : "jvm", "library_version" : ${content_meta_library_version}, - "component" : "junit", - "_dd.profiling.ctx" : "test", - "span.kind" : "test_session_end", "runtime-id" : ${content_meta_runtime_id}, + "span.kind" : "test_session_end", "test.command" : "junit-5.8", + "test.framework" : "junit5", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } + "test.status" : "fail", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id} + }, + "name" : "junit.test_session", + "resource" : "junit-5.8", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_session_end", + "version" : 1 }, { - "type" : "test_module_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_module", - "resource" : "junit-5.8", - "start" : ${content_start_2}, "duration" : ${content_duration_2}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_2}, - "test.type" : "test", - "test.module" : "junit-5.8", - "test.status" : "fail", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_module_end", + "test.framework" : "junit5", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } + "test.module" : "junit-5.8", + "test.status" : "fail", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} + }, + "name" : "junit.test_module", + "resource" : "junit-5.8", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_2}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_module_end", + "version" : 1 }, { - "type" : "test_suite_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_suite", - "resource" : "org.example.TestFailedAfterAll", - "start" : ${content_start_3}, "duration" : ${content_duration_3}, "error" : 1, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, - "test.source.end" : 19, - "test.source.start" : 11 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_3}, - "test.type" : "test", - "test.source.file" : "dummy_source_path", - "test.module" : "junit-5.8", - "test.status" : "fail", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "test.codeowners" : "[\"owner1\",\"owner2\"]", - "library_version" : ${content_meta_library_version}, "component" : "junit", - "error.type" : "java.lang.RuntimeException", - "span.kind" : "test_suite_end", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "error.message" : ${content_meta_error_message}, - "test.suite" : "org.example.TestFailedAfterAll", "error.stack" : ${content_meta_error_stack}, + "error.type" : "java.lang.RuntimeException", + "library_version" : ${content_meta_library_version}, + "span.kind" : "test_suite_end", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit5", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } + "test.module" : "junit-5.8", + "test.source.file" : "dummy_source_path", + "test.status" : "fail", + "test.suite" : "org.example.TestFailedAfterAll", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, + "test.source.end" : 19, + "test.source.start" : 11 + }, + "name" : "junit.test_suite", + "resource" : "org.example.TestFailedAfterAll", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_3}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id} + }, + "type" : "test_suite_end", + "version" : 1 }, { - "type" : "test", - "version" : 2, "content" : { - "trace_id" : ${content_trace_id}, - "span_id" : ${content_span_id}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestFailedAfterAll.another_test_succeed", - "start" : ${content_start_4}, "duration" : ${content_duration_4}, "error" : 0, - "metrics" : { - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, - "test.source.end" : 18, - "test.source.start" : 12 - }, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "another_test_succeed()V", - "test.module" : "junit-5.8", - "test.status" : "pass", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "language" : "jvm", - "test.is_new" : "true", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "another_test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit5", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.is_new" : "true", + "test.module" : "junit-5.8", + "test.name" : "another_test_succeed", + "test.source.file" : "dummy_source_path", + "test.source.method" : "another_test_succeed()V", + "test.status" : "pass", "test.suite" : "org.example.TestFailedAfterAll", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "component" : "junit", - "_dd.profiling.ctx" : "test", - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } -}, { - "type" : "test", - "version" : 2, - "content" : { - "trace_id" : ${content_trace_id_2}, - "span_id" : ${content_span_id_2}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestFailedAfterAll.test_succeed", - "start" : ${content_start_5}, - "duration" : ${content_duration_5}, - "error" : 0, + "test_session.name" : "session-name" + }, "metrics" : { - "process_id" : ${content_metrics_process_id}, + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, "_dd.profiling.enabled" : 0, "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "process_id" : ${content_metrics_process_id}, "test.source.end" : 18, "test.source.start" : 12 }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestFailedAfterAll.another_test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id}, + "start" : ${content_start_4}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id} + }, + "type" : "test", + "version" : 2 +}, { + "content" : { + "duration" : ${content_duration_5}, + "error" : 0, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "test_succeed()V", - "test.module" : "junit-5.8", - "test.status" : "pass", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "language" : "jvm", - "test.is_new" : "true", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit5", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.is_new" : "true", + "test.module" : "junit-5.8", + "test.name" : "test_succeed", + "test.source.file" : "dummy_source_path", + "test.source.method" : "test_succeed()V", + "test.status" : "pass", "test.suite" : "org.example.TestFailedAfterAll", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "component" : "junit", - "_dd.profiling.ctx" : "test", - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id}, + "test.source.end" : 18, + "test.source.start" : 12 + }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestFailedAfterAll.test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_2}, + "start" : ${content_start_5}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id_2} + }, + "type" : "test", + "version" : 2 }, { - "type" : "span", - "version" : 1, "content" : { - "trace_id" : ${content_test_session_id}, - "span_id" : ${content_span_id_3}, - "parent_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "tearDown", - "resource" : "tearDown", - "start" : ${content_start_6}, "duration" : ${content_duration_6}, "error" : 1, - "metrics" : { }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_4}, + "env" : "none", + "error.message" : ${content_meta_error_message}, "error.stack" : ${content_meta_error_stack_2}, - "test.callback" : "AfterAll", - "library_version" : ${content_meta_library_version}, "error.type" : "java.lang.RuntimeException", - "env" : "none", - "error.message" : ${content_meta_error_message} - } - } + "library_version" : ${content_meta_library_version}, + "test.callback" : "AfterAll" + }, + "metrics" : { }, + "name" : "tearDown", + "parent_id" : ${content_test_suite_id}, + "resource" : "tearDown", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_3}, + "start" : ${content_start_6}, + "trace_id" : ${content_test_session_id} + }, + "type" : "span", + "version" : 1 } ] \ No newline at end of file diff --git a/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-failed-after-each/events.ftl b/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-failed-after-each/events.ftl index a758ae37c46..22f95e7c8da 100644 --- a/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-failed-after-each/events.ftl +++ b/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-failed-after-each/events.ftl @@ -1,251 +1,251 @@ [ { - "type" : "test_session_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_session", - "resource" : "junit-5.8", - "start" : ${content_start}, "duration" : ${content_duration}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid}, - "test.type" : "test", + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.status" : "fail", - "test_session.name" : "session-name", - "language" : "jvm", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", + "language" : "jvm", "library_version" : ${content_meta_library_version}, - "component" : "junit", - "_dd.profiling.ctx" : "test", - "span.kind" : "test_session_end", "runtime-id" : ${content_meta_runtime_id}, + "span.kind" : "test_session_end", "test.command" : "junit-5.8", + "test.framework" : "junit5", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } + "test.status" : "fail", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id} + }, + "name" : "junit.test_session", + "resource" : "junit-5.8", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_session_end", + "version" : 1 }, { - "type" : "test_module_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_module", - "resource" : "junit-5.8", - "start" : ${content_start_2}, "duration" : ${content_duration_2}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_2}, - "test.type" : "test", - "test.module" : "junit-5.8", - "test.status" : "fail", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_module_end", + "test.framework" : "junit5", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } + "test.module" : "junit-5.8", + "test.status" : "fail", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} + }, + "name" : "junit.test_module", + "resource" : "junit-5.8", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_2}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_module_end", + "version" : 1 }, { - "type" : "test_suite_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_suite", - "resource" : "org.example.TestFailedAfterEach", - "start" : ${content_start_3}, "duration" : ${content_duration_3}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, - "test.source.end" : 19, - "test.source.start" : 11 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_3}, - "test.type" : "test", - "test.source.file" : "dummy_source_path", - "test.module" : "junit-5.8", - "test.status" : "fail", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", - "test.codeowners" : "[\"owner1\",\"owner2\"]", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_suite_end", - "test.suite" : "org.example.TestFailedAfterEach", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit5", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } + "test.module" : "junit-5.8", + "test.source.file" : "dummy_source_path", + "test.status" : "fail", + "test.suite" : "org.example.TestFailedAfterEach", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, + "test.source.end" : 19, + "test.source.start" : 11 + }, + "name" : "junit.test_suite", + "resource" : "org.example.TestFailedAfterEach", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_3}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id} + }, + "type" : "test_suite_end", + "version" : 1 }, { - "type" : "test", - "version" : 2, "content" : { - "trace_id" : ${content_trace_id}, - "span_id" : ${content_span_id}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestFailedAfterEach.another_test_succeed", - "start" : ${content_start_4}, "duration" : ${content_duration_4}, "error" : 1, - "metrics" : { - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, - "test.source.end" : 18, - "test.source.start" : 12 - }, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "another_test_succeed()V", - "test.module" : "junit-5.8", - "test.status" : "fail", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", + "error.message" : ${content_meta_error_message}, + "error.stack" : ${content_meta_error_stack}, + "error.type" : "java.lang.RuntimeException", "language" : "jvm", - "test.is_new" : "true", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "another_test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit5", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.is_new" : "true", + "test.module" : "junit-5.8", + "test.name" : "another_test_succeed", + "test.source.file" : "dummy_source_path", + "test.source.method" : "another_test_succeed()V", + "test.status" : "fail", "test.suite" : "org.example.TestFailedAfterEach", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "component" : "junit", - "error.type" : "java.lang.RuntimeException", - "_dd.profiling.ctx" : "test", - "error.message" : ${content_meta_error_message}, - "error.stack" : ${content_meta_error_stack}, - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } -}, { - "type" : "test", - "version" : 2, - "content" : { - "trace_id" : ${content_trace_id_2}, - "span_id" : ${content_span_id_2}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestFailedAfterEach.test_succeed", - "start" : ${content_start_5}, - "duration" : ${content_duration_5}, - "error" : 1, + "test_session.name" : "session-name" + }, "metrics" : { - "process_id" : ${content_metrics_process_id}, + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, "_dd.profiling.enabled" : 0, "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "process_id" : ${content_metrics_process_id}, "test.source.end" : 18, "test.source.start" : 12 }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestFailedAfterEach.another_test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id}, + "start" : ${content_start_4}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id} + }, + "type" : "test", + "version" : 2 +}, { + "content" : { + "duration" : ${content_duration_5}, + "error" : 1, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "test_succeed()V", - "test.module" : "junit-5.8", - "test.status" : "fail", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", + "error.message" : ${content_meta_error_message}, + "error.stack" : ${content_meta_error_stack_2}, + "error.type" : "java.lang.RuntimeException", "language" : "jvm", - "test.is_new" : "true", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit5", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.is_new" : "true", + "test.module" : "junit-5.8", + "test.name" : "test_succeed", + "test.source.file" : "dummy_source_path", + "test.source.method" : "test_succeed()V", + "test.status" : "fail", "test.suite" : "org.example.TestFailedAfterEach", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "component" : "junit", - "error.type" : "java.lang.RuntimeException", - "_dd.profiling.ctx" : "test", - "error.message" : ${content_meta_error_message}, - "error.stack" : ${content_meta_error_stack_2}, - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id}, + "test.source.end" : 18, + "test.source.start" : 12 + }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestFailedAfterEach.test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_2}, + "start" : ${content_start_5}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id_2} + }, + "type" : "test", + "version" : 2 }, { - "type" : "span", - "version" : 1, "content" : { - "trace_id" : ${content_trace_id}, - "span_id" : ${content_span_id_3}, - "parent_id" : ${content_span_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "tearDown", - "resource" : "tearDown", - "start" : ${content_start_6}, "duration" : ${content_duration_6}, "error" : 1, - "metrics" : { }, "meta" : { + "env" : "none", + "error.message" : ${content_meta_error_message}, "error.stack" : ${content_meta_error_stack_3}, - "test.callback" : "AfterEach", - "library_version" : ${content_meta_library_version}, "error.type" : "java.lang.RuntimeException", - "env" : "none", - "error.message" : ${content_meta_error_message} - } - } -}, { - "type" : "span", - "version" : 1, - "content" : { - "trace_id" : ${content_trace_id_2}, - "span_id" : ${content_span_id_4}, - "parent_id" : ${content_span_id_2}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "library_version" : ${content_meta_library_version}, + "test.callback" : "AfterEach" + }, + "metrics" : { }, "name" : "tearDown", + "parent_id" : ${content_span_id}, "resource" : "tearDown", - "start" : ${content_start_7}, + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_3}, + "start" : ${content_start_6}, + "trace_id" : ${content_trace_id} + }, + "type" : "span", + "version" : 1 +}, { + "content" : { "duration" : ${content_duration_7}, "error" : 1, - "metrics" : { }, "meta" : { + "env" : "none", + "error.message" : ${content_meta_error_message}, "error.stack" : ${content_meta_error_stack_4}, - "test.callback" : "AfterEach", - "library_version" : ${content_meta_library_version}, "error.type" : "java.lang.RuntimeException", - "env" : "none", - "error.message" : ${content_meta_error_message} - } - } + "library_version" : ${content_meta_library_version}, + "test.callback" : "AfterEach" + }, + "metrics" : { }, + "name" : "tearDown", + "parent_id" : ${content_span_id_2}, + "resource" : "tearDown", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_4}, + "start" : ${content_start_7}, + "trace_id" : ${content_trace_id_2} + }, + "type" : "span", + "version" : 1 } ] \ No newline at end of file diff --git a/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-failed-before-all/events.ftl b/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-failed-before-all/events.ftl index 7f3a83d6454..a66069d423b 100644 --- a/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-failed-before-all/events.ftl +++ b/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-failed-before-all/events.ftl @@ -1,130 +1,130 @@ [ { - "type" : "test_session_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_session", - "resource" : "junit-5.8", - "start" : ${content_start}, "duration" : ${content_duration}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid}, - "test.type" : "test", + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.status" : "fail", - "test_session.name" : "session-name", - "language" : "jvm", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", + "language" : "jvm", "library_version" : ${content_meta_library_version}, - "component" : "junit", - "_dd.profiling.ctx" : "test", - "span.kind" : "test_session_end", "runtime-id" : ${content_meta_runtime_id}, + "span.kind" : "test_session_end", "test.command" : "junit-5.8", + "test.framework" : "junit5", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } + "test.status" : "fail", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id} + }, + "name" : "junit.test_session", + "resource" : "junit-5.8", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_session_end", + "version" : 1 }, { - "type" : "test_module_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_module", - "resource" : "junit-5.8", - "start" : ${content_start_2}, "duration" : ${content_duration_2}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_2}, - "test.type" : "test", - "test.module" : "junit-5.8", - "test.status" : "fail", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_module_end", + "test.framework" : "junit5", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } + "test.module" : "junit-5.8", + "test.status" : "fail", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} + }, + "name" : "junit.test_module", + "resource" : "junit-5.8", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_2}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_module_end", + "version" : 1 }, { - "type" : "test_suite_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_suite", - "resource" : "org.example.TestFailedBeforeAll", - "start" : ${content_start_3}, "duration" : ${content_duration_3}, "error" : 1, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, - "test.source.end" : 19, - "test.source.start" : 11 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_3}, - "test.type" : "test", - "test.source.file" : "dummy_source_path", - "test.module" : "junit-5.8", - "test.status" : "fail", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "test.codeowners" : "[\"owner1\",\"owner2\"]", - "library_version" : ${content_meta_library_version}, "component" : "junit", - "error.type" : "java.lang.RuntimeException", - "span.kind" : "test_suite_end", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "error.message" : ${content_meta_error_message}, - "test.suite" : "org.example.TestFailedBeforeAll", "error.stack" : ${content_meta_error_stack}, + "error.type" : "java.lang.RuntimeException", + "library_version" : ${content_meta_library_version}, + "span.kind" : "test_suite_end", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit5", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } + "test.module" : "junit-5.8", + "test.source.file" : "dummy_source_path", + "test.status" : "fail", + "test.suite" : "org.example.TestFailedBeforeAll", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, + "test.source.end" : 19, + "test.source.start" : 11 + }, + "name" : "junit.test_suite", + "resource" : "org.example.TestFailedBeforeAll", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_3}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id} + }, + "type" : "test_suite_end", + "version" : 1 }, { - "type" : "span", - "version" : 1, "content" : { - "trace_id" : ${content_test_session_id}, - "span_id" : ${content_span_id}, - "parent_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "setUp", - "resource" : "setUp", - "start" : ${content_start_4}, "duration" : ${content_duration_4}, "error" : 1, - "metrics" : { }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_4}, + "env" : "none", + "error.message" : ${content_meta_error_message}, "error.stack" : ${content_meta_error_stack_2}, - "test.callback" : "BeforeAll", - "library_version" : ${content_meta_library_version}, "error.type" : "java.lang.RuntimeException", - "env" : "none", - "error.message" : ${content_meta_error_message} - } - } + "library_version" : ${content_meta_library_version}, + "test.callback" : "BeforeAll" + }, + "metrics" : { }, + "name" : "setUp", + "parent_id" : ${content_test_suite_id}, + "resource" : "setUp", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id}, + "start" : ${content_start_4}, + "trace_id" : ${content_test_session_id} + }, + "type" : "span", + "version" : 1 } ] \ No newline at end of file diff --git a/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-failed-before-each/events.ftl b/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-failed-before-each/events.ftl index d395452b0d9..46bd5467bdd 100644 --- a/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-failed-before-each/events.ftl +++ b/dd-java-agent/instrumentation/junit-5.3/junit-5.8/src/test/resources/test-failed-before-each/events.ftl @@ -1,251 +1,251 @@ [ { - "type" : "test_session_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_session", - "resource" : "junit-5.8", - "start" : ${content_start}, "duration" : ${content_duration}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid}, - "test.type" : "test", + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.status" : "fail", - "test_session.name" : "session-name", - "language" : "jvm", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", + "language" : "jvm", "library_version" : ${content_meta_library_version}, - "component" : "junit", - "_dd.profiling.ctx" : "test", - "span.kind" : "test_session_end", "runtime-id" : ${content_meta_runtime_id}, + "span.kind" : "test_session_end", "test.command" : "junit-5.8", + "test.framework" : "junit5", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } + "test.status" : "fail", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id} + }, + "name" : "junit.test_session", + "resource" : "junit-5.8", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_session_end", + "version" : 1 }, { - "type" : "test_module_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_module", - "resource" : "junit-5.8", - "start" : ${content_start_2}, "duration" : ${content_duration_2}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_2}, - "test.type" : "test", - "test.module" : "junit-5.8", - "test.status" : "fail", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_module_end", + "test.framework" : "junit5", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } + "test.module" : "junit-5.8", + "test.status" : "fail", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_2} + }, + "name" : "junit.test_module", + "resource" : "junit-5.8", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_2}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id} + }, + "type" : "test_module_end", + "version" : 1 }, { - "type" : "test_suite_end", - "version" : 1, "content" : { - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test_suite", - "resource" : "org.example.TestFailedBeforeEach", - "start" : ${content_start_3}, "duration" : ${content_duration_3}, "error" : 0, - "metrics" : { - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, - "test.source.end" : 19, - "test.source.start" : 11 - }, "meta" : { "_dd.p.tid" : ${content_meta__dd_p_tid_3}, - "test.type" : "test", - "test.source.file" : "dummy_source_path", - "test.module" : "junit-5.8", - "test.status" : "fail", - "test_session.name" : "session-name", - "env" : "none", + "component" : "junit", "dummy_ci_tag" : "dummy_ci_tag_value", - "test.codeowners" : "[\"owner1\",\"owner2\"]", + "env" : "none", "library_version" : ${content_meta_library_version}, - "component" : "junit", "span.kind" : "test_suite_end", - "test.suite" : "org.example.TestFailedBeforeEach", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit5", "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } + "test.module" : "junit-5.8", + "test.source.file" : "dummy_source_path", + "test.status" : "fail", + "test.suite" : "org.example.TestFailedBeforeEach", + "test.type" : "test", + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_3}, + "test.source.end" : 19, + "test.source.start" : 11 + }, + "name" : "junit.test_suite", + "resource" : "org.example.TestFailedBeforeEach", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "start" : ${content_start_3}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id} + }, + "type" : "test_suite_end", + "version" : 1 }, { - "type" : "test", - "version" : 2, "content" : { - "trace_id" : ${content_trace_id}, - "span_id" : ${content_span_id}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestFailedBeforeEach.another_test_succeed", - "start" : ${content_start_4}, "duration" : ${content_duration_4}, "error" : 1, - "metrics" : { - "process_id" : ${content_metrics_process_id}, - "_dd.profiling.enabled" : 0, - "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, - "test.source.end" : 18, - "test.source.start" : 12 - }, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "another_test_succeed()V", - "test.module" : "junit-5.8", - "test.status" : "fail", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", + "error.message" : ${content_meta_error_message}, + "error.stack" : ${content_meta_error_stack}, + "error.type" : "java.lang.RuntimeException", "language" : "jvm", - "test.is_new" : "true", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "another_test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit5", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.is_new" : "true", + "test.module" : "junit-5.8", + "test.name" : "another_test_succeed", + "test.source.file" : "dummy_source_path", + "test.source.method" : "another_test_succeed()V", + "test.status" : "fail", "test.suite" : "org.example.TestFailedBeforeEach", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "component" : "junit", - "error.type" : "java.lang.RuntimeException", - "_dd.profiling.ctx" : "test", - "error.message" : ${content_meta_error_message}, - "error.stack" : ${content_meta_error_stack}, - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } -}, { - "type" : "test", - "version" : 2, - "content" : { - "trace_id" : ${content_trace_id_2}, - "span_id" : ${content_span_id_2}, - "parent_id" : ${content_parent_id}, - "test_session_id" : ${content_test_session_id}, - "test_module_id" : ${content_test_module_id}, - "test_suite_id" : ${content_test_suite_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "junit.test", - "resource" : "org.example.TestFailedBeforeEach.test_succeed", - "start" : ${content_start_5}, - "duration" : ${content_duration_5}, - "error" : 1, + "test_session.name" : "session-name" + }, "metrics" : { - "process_id" : ${content_metrics_process_id}, + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_4}, "_dd.profiling.enabled" : 0, "_dd.trace_span_attribute_schema" : 0, - "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "process_id" : ${content_metrics_process_id}, "test.source.end" : 18, "test.source.start" : 12 }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestFailedBeforeEach.another_test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id}, + "start" : ${content_start_4}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id} + }, + "type" : "test", + "version" : 2 +}, { + "content" : { + "duration" : ${content_duration_5}, + "error" : 1, "meta" : { + "_dd.profiling.ctx" : "test", "_dd.tracer_host" : ${content_meta__dd_tracer_host}, - "test.source.file" : "dummy_source_path", - "test.source.method" : "test_succeed()V", - "test.module" : "junit-5.8", - "test.status" : "fail", + "component" : "junit", + "dummy_ci_tag" : "dummy_ci_tag_value", + "env" : "none", + "error.message" : ${content_meta_error_message}, + "error.stack" : ${content_meta_error_stack_2}, + "error.type" : "java.lang.RuntimeException", "language" : "jvm", - "test.is_new" : "true", - "test.codeowners" : "[\"owner1\",\"owner2\"]", "library_version" : ${content_meta_library_version}, - "test.name" : "test_succeed", + "runtime-id" : ${content_meta_runtime_id}, "span.kind" : "test", + "test.codeowners" : "[\"owner1\",\"owner2\"]", + "test.framework" : "junit5", + "test.framework_version" : ${content_meta_test_framework_version}, + "test.is_new" : "true", + "test.module" : "junit-5.8", + "test.name" : "test_succeed", + "test.source.file" : "dummy_source_path", + "test.source.method" : "test_succeed()V", + "test.status" : "fail", "test.suite" : "org.example.TestFailedBeforeEach", - "runtime-id" : ${content_meta_runtime_id}, "test.type" : "test", - "test_session.name" : "session-name", - "env" : "none", - "dummy_ci_tag" : "dummy_ci_tag_value", - "component" : "junit", - "error.type" : "java.lang.RuntimeException", - "_dd.profiling.ctx" : "test", - "error.message" : ${content_meta_error_message}, - "error.stack" : ${content_meta_error_stack_2}, - "test.framework_version" : ${content_meta_test_framework_version}, - "test.framework" : "junit5" - } - } + "test_session.name" : "session-name" + }, + "metrics" : { + "_dd.host.vcpu_count" : ${content_metrics__dd_host_vcpu_count_5}, + "_dd.profiling.enabled" : 0, + "_dd.trace_span_attribute_schema" : 0, + "process_id" : ${content_metrics_process_id}, + "test.source.end" : 18, + "test.source.start" : 12 + }, + "name" : "junit.test", + "parent_id" : ${content_parent_id}, + "resource" : "org.example.TestFailedBeforeEach.test_succeed", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_2}, + "start" : ${content_start_5}, + "test_module_id" : ${content_test_module_id}, + "test_session_id" : ${content_test_session_id}, + "test_suite_id" : ${content_test_suite_id}, + "trace_id" : ${content_trace_id_2} + }, + "type" : "test", + "version" : 2 }, { - "type" : "span", - "version" : 1, "content" : { - "trace_id" : ${content_trace_id}, - "span_id" : ${content_span_id_3}, - "parent_id" : ${content_span_id}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", - "name" : "setUp", - "resource" : "setUp", - "start" : ${content_start_6}, "duration" : ${content_duration_6}, "error" : 1, - "metrics" : { }, "meta" : { + "env" : "none", + "error.message" : ${content_meta_error_message}, "error.stack" : ${content_meta_error_stack_3}, - "test.callback" : "BeforeEach", - "library_version" : ${content_meta_library_version}, "error.type" : "java.lang.RuntimeException", - "env" : "none", - "error.message" : ${content_meta_error_message} - } - } -}, { - "type" : "span", - "version" : 1, - "content" : { - "trace_id" : ${content_trace_id_2}, - "span_id" : ${content_span_id_4}, - "parent_id" : ${content_span_id_2}, - "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "library_version" : ${content_meta_library_version}, + "test.callback" : "BeforeEach" + }, + "metrics" : { }, "name" : "setUp", + "parent_id" : ${content_span_id}, "resource" : "setUp", - "start" : ${content_start_7}, + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_3}, + "start" : ${content_start_6}, + "trace_id" : ${content_trace_id} + }, + "type" : "span", + "version" : 1 +}, { + "content" : { "duration" : ${content_duration_7}, "error" : 1, - "metrics" : { }, "meta" : { + "env" : "none", + "error.message" : ${content_meta_error_message}, "error.stack" : ${content_meta_error_stack_4}, - "test.callback" : "BeforeEach", - "library_version" : ${content_meta_library_version}, "error.type" : "java.lang.RuntimeException", - "env" : "none", - "error.message" : ${content_meta_error_message} - } - } + "library_version" : ${content_meta_library_version}, + "test.callback" : "BeforeEach" + }, + "metrics" : { }, + "name" : "setUp", + "parent_id" : ${content_span_id_2}, + "resource" : "setUp", + "service" : "worker.org.gradle.process.internal.worker.gradleworkermain", + "span_id" : ${content_span_id_4}, + "start" : ${content_start_7}, + "trace_id" : ${content_trace_id_2} + }, + "type" : "span", + "version" : 1 } ] \ No newline at end of file diff --git a/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/groovy/SpockTest.groovy b/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/groovy/SpockTest.groovy index 1f76fb7d93d..1196821b5c6 100644 --- a/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/groovy/SpockTest.groovy +++ b/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/groovy/SpockTest.groovy @@ -1,5 +1,4 @@ import datadog.trace.api.DisableTestTrace -import datadog.trace.api.civisibility.CIConstants import datadog.trace.api.civisibility.config.TestIdentifier import datadog.trace.civisibility.CiVisibilityInstrumentationTest import datadog.trace.civisibility.diff.FileDiff @@ -133,7 +132,7 @@ class SpockTest extends CiVisibilityInstrumentationTest { } def "test quarantined #testcaseName"() { - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) runTests(tests, true) @@ -147,7 +146,7 @@ class SpockTest extends CiVisibilityInstrumentationTest { } def "test quarantined auto-retries #testcaseName"() { - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) givenFlakyRetryEnabled(true) @@ -164,7 +163,7 @@ class SpockTest extends CiVisibilityInstrumentationTest { } def "test quarantined early flakiness detection #testcaseName"() { - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) givenEarlyFlakinessDetectionEnabled(true) diff --git a/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/resources/test-quarantined-failed-atr/events.ftl b/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/resources/test-quarantined-failed-atr/events.ftl index 057e0af9afd..bfe1263f1ff 100644 --- a/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/resources/test-quarantined-failed-atr/events.ftl +++ b/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/resources/test-quarantined-failed-atr/events.ftl @@ -317,6 +317,7 @@ "test.framework" : "spock", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -349,6 +350,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "spock-junit-5", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/resources/test-quarantined-failed-efd/events.ftl b/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/resources/test-quarantined-failed-efd/events.ftl index 30fb242b205..c4808da6720 100644 --- a/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/resources/test-quarantined-failed-efd/events.ftl +++ b/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/resources/test-quarantined-failed-efd/events.ftl @@ -215,6 +215,7 @@ "test.framework" : "spock", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -248,6 +249,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "spock-junit-5", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/resources/test-quarantined-failed-known/events.ftl b/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/resources/test-quarantined-failed-known/events.ftl index 10784161694..2015aa5d8b2 100644 --- a/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/resources/test-quarantined-failed-known/events.ftl +++ b/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/resources/test-quarantined-failed-known/events.ftl @@ -105,6 +105,7 @@ "test.framework" : "spock", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -138,6 +139,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "spock-junit-5", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/resources/test-quarantined-failed-parameterized/events.ftl b/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/resources/test-quarantined-failed-parameterized/events.ftl index d09ffd910aa..076e6d5e932 100644 --- a/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/resources/test-quarantined-failed-parameterized/events.ftl +++ b/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/resources/test-quarantined-failed-parameterized/events.ftl @@ -153,6 +153,7 @@ "test.framework" : "spock", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -185,6 +186,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "spock-junit-5", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/resources/test-quarantined-failed/events.ftl b/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/resources/test-quarantined-failed/events.ftl index cb3f8597871..44f26a9dacc 100644 --- a/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/resources/test-quarantined-failed/events.ftl +++ b/dd-java-agent/instrumentation/junit-5.3/spock-junit-5/src/test/resources/test-quarantined-failed/events.ftl @@ -104,6 +104,7 @@ "test.framework" : "spock", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -136,6 +137,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "spock-junit-5", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-5.3/src/test/groovy/JUnit5Test.groovy b/dd-java-agent/instrumentation/junit-5.3/src/test/groovy/JUnit5Test.groovy index 49225c3547b..049253836b4 100644 --- a/dd-java-agent/instrumentation/junit-5.3/src/test/groovy/JUnit5Test.groovy +++ b/dd-java-agent/instrumentation/junit-5.3/src/test/groovy/JUnit5Test.groovy @@ -165,7 +165,7 @@ class JUnit5Test extends CiVisibilityInstrumentationTest { } def "test quarantined #testcaseName"() { - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) runTests(tests, true) @@ -179,7 +179,7 @@ class JUnit5Test extends CiVisibilityInstrumentationTest { } def "test quarantined auto-retries #testcaseName"() { - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) givenFlakyRetryEnabled(true) @@ -196,7 +196,7 @@ class JUnit5Test extends CiVisibilityInstrumentationTest { } def "test quarantined early flakiness detection #testcaseName"() { - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) givenEarlyFlakinessDetectionEnabled(true) diff --git a/dd-java-agent/instrumentation/junit-5.3/src/test/resources/test-quarantined-failed-atr/events.ftl b/dd-java-agent/instrumentation/junit-5.3/src/test/resources/test-quarantined-failed-atr/events.ftl index 4283b62ced7..0513a9cb6eb 100644 --- a/dd-java-agent/instrumentation/junit-5.3/src/test/resources/test-quarantined-failed-atr/events.ftl +++ b/dd-java-agent/instrumentation/junit-5.3/src/test/resources/test-quarantined-failed-atr/events.ftl @@ -17,6 +17,7 @@ "test.framework" : "junit5", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -49,6 +50,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "junit-5.3", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-5.3/src/test/resources/test-quarantined-failed-efd/events.ftl b/dd-java-agent/instrumentation/junit-5.3/src/test/resources/test-quarantined-failed-efd/events.ftl index ee69490a5cc..d67333861ea 100644 --- a/dd-java-agent/instrumentation/junit-5.3/src/test/resources/test-quarantined-failed-efd/events.ftl +++ b/dd-java-agent/instrumentation/junit-5.3/src/test/resources/test-quarantined-failed-efd/events.ftl @@ -18,6 +18,7 @@ "test.framework" : "junit5", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -51,6 +52,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "junit-5.3", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-5.3/src/test/resources/test-quarantined-failed-known/events.ftl b/dd-java-agent/instrumentation/junit-5.3/src/test/resources/test-quarantined-failed-known/events.ftl index 0681acfab8d..4cd3042664f 100644 --- a/dd-java-agent/instrumentation/junit-5.3/src/test/resources/test-quarantined-failed-known/events.ftl +++ b/dd-java-agent/instrumentation/junit-5.3/src/test/resources/test-quarantined-failed-known/events.ftl @@ -18,6 +18,7 @@ "test.framework" : "junit5", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -51,6 +52,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "junit-5.3", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-5.3/src/test/resources/test-quarantined-failed-parameterized/events.ftl b/dd-java-agent/instrumentation/junit-5.3/src/test/resources/test-quarantined-failed-parameterized/events.ftl index dc422d1d12a..631f415b2ac 100644 --- a/dd-java-agent/instrumentation/junit-5.3/src/test/resources/test-quarantined-failed-parameterized/events.ftl +++ b/dd-java-agent/instrumentation/junit-5.3/src/test/resources/test-quarantined-failed-parameterized/events.ftl @@ -17,6 +17,7 @@ "test.framework" : "junit5", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -49,6 +50,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "junit-5.3", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/junit-5.3/src/test/resources/test-quarantined-failed/events.ftl b/dd-java-agent/instrumentation/junit-5.3/src/test/resources/test-quarantined-failed/events.ftl index 6ba32d8dccb..f66021f3e58 100644 --- a/dd-java-agent/instrumentation/junit-5.3/src/test/resources/test-quarantined-failed/events.ftl +++ b/dd-java-agent/instrumentation/junit-5.3/src/test/resources/test-quarantined-failed/events.ftl @@ -17,6 +17,7 @@ "test.framework" : "junit5", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -49,6 +50,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "junit-5.3", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/karate/src/test/groovy/KarateTest.groovy b/dd-java-agent/instrumentation/karate/src/test/groovy/KarateTest.groovy index 3a866bd64e8..367562a8992 100644 --- a/dd-java-agent/instrumentation/karate/src/test/groovy/KarateTest.groovy +++ b/dd-java-agent/instrumentation/karate/src/test/groovy/KarateTest.groovy @@ -96,7 +96,7 @@ class KarateTest extends CiVisibilityInstrumentationTest { } def "test quarantined #testcaseName"() { - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) runTests(tests, true) diff --git a/dd-java-agent/instrumentation/karate/src/test/resources/test-quarantined-failed/events.ftl b/dd-java-agent/instrumentation/karate/src/test/resources/test-quarantined-failed/events.ftl index 2440c78cd2c..49653072786 100644 --- a/dd-java-agent/instrumentation/karate/src/test/resources/test-quarantined-failed/events.ftl +++ b/dd-java-agent/instrumentation/karate/src/test/resources/test-quarantined-failed/events.ftl @@ -185,6 +185,7 @@ "test.framework" : "karate", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -217,6 +218,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "karate", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/scalatest/src/test/groovy/ScalatestTest.groovy b/dd-java-agent/instrumentation/scalatest/src/test/groovy/ScalatestTest.groovy index 35f68295a2b..fdc41360152 100644 --- a/dd-java-agent/instrumentation/scalatest/src/test/groovy/ScalatestTest.groovy +++ b/dd-java-agent/instrumentation/scalatest/src/test/groovy/ScalatestTest.groovy @@ -102,7 +102,7 @@ class ScalatestTest extends CiVisibilityInstrumentationTest { } def "test quarantined #testcaseName"() { - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) runTests(tests, true) @@ -115,7 +115,7 @@ class ScalatestTest extends CiVisibilityInstrumentationTest { } def "test quarantined auto-retries #testcaseName"() { - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) givenFlakyRetryEnabled(true) @@ -132,7 +132,7 @@ class ScalatestTest extends CiVisibilityInstrumentationTest { } def "test quarantined early flakiness detection #testcaseName"() { - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) givenEarlyFlakinessDetectionEnabled(true) diff --git a/dd-java-agent/instrumentation/scalatest/src/test/resources/test-quarantined-failed-atr/events.ftl b/dd-java-agent/instrumentation/scalatest/src/test/resources/test-quarantined-failed-atr/events.ftl index 6349dc54035..f1fe335b033 100644 --- a/dd-java-agent/instrumentation/scalatest/src/test/resources/test-quarantined-failed-atr/events.ftl +++ b/dd-java-agent/instrumentation/scalatest/src/test/resources/test-quarantined-failed-atr/events.ftl @@ -302,6 +302,7 @@ "test.framework" : "scalatest", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -334,6 +335,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "scalatest", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/scalatest/src/test/resources/test-quarantined-failed-efd/events.ftl b/dd-java-agent/instrumentation/scalatest/src/test/resources/test-quarantined-failed-efd/events.ftl index d41a5052157..5f98ac2cd75 100644 --- a/dd-java-agent/instrumentation/scalatest/src/test/resources/test-quarantined-failed-efd/events.ftl +++ b/dd-java-agent/instrumentation/scalatest/src/test/resources/test-quarantined-failed-efd/events.ftl @@ -206,6 +206,7 @@ "test.framework" : "scalatest", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -239,6 +240,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "scalatest", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/scalatest/src/test/resources/test-quarantined-failed-known/events.ftl b/dd-java-agent/instrumentation/scalatest/src/test/resources/test-quarantined-failed-known/events.ftl index b58aa206350..e1ece69ed19 100644 --- a/dd-java-agent/instrumentation/scalatest/src/test/resources/test-quarantined-failed-known/events.ftl +++ b/dd-java-agent/instrumentation/scalatest/src/test/resources/test-quarantined-failed-known/events.ftl @@ -102,6 +102,7 @@ "test.framework" : "scalatest", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -135,6 +136,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "scalatest", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/scalatest/src/test/resources/test-quarantined-failed/events.ftl b/dd-java-agent/instrumentation/scalatest/src/test/resources/test-quarantined-failed/events.ftl index 14dd8e63817..421a001aae5 100644 --- a/dd-java-agent/instrumentation/scalatest/src/test/resources/test-quarantined-failed/events.ftl +++ b/dd-java-agent/instrumentation/scalatest/src/test/resources/test-quarantined-failed/events.ftl @@ -101,6 +101,7 @@ "test.framework" : "scalatest", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -133,6 +134,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "scalatest", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/testng/src/testFixtures/groovy/datadog/trace/instrumentation/testng/TestNGTest.groovy b/dd-java-agent/instrumentation/testng/src/testFixtures/groovy/datadog/trace/instrumentation/testng/TestNGTest.groovy index 29168c66838..d5d6fec2f24 100644 --- a/dd-java-agent/instrumentation/testng/src/testFixtures/groovy/datadog/trace/instrumentation/testng/TestNGTest.groovy +++ b/dd-java-agent/instrumentation/testng/src/testFixtures/groovy/datadog/trace/instrumentation/testng/TestNGTest.groovy @@ -157,7 +157,7 @@ abstract class TestNGTest extends CiVisibilityInstrumentationTest { def "test quarantined #testcaseName"() { Assumptions.assumeTrue(isExceptionSuppressionSupported()) - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) runTests(tests, null, true) @@ -173,7 +173,7 @@ abstract class TestNGTest extends CiVisibilityInstrumentationTest { def "test quarantined auto-retries #testcaseName"() { Assumptions.assumeTrue(isExceptionSuppressionSupported()) - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) givenFlakyRetryEnabled(true) @@ -192,7 +192,7 @@ abstract class TestNGTest extends CiVisibilityInstrumentationTest { def "test quarantined early flakiness detection #testcaseName"() { Assumptions.assumeTrue(isExceptionSuppressionSupported()) - givenQuarantineEnabled(true) + givenTestManagementEnabled(true) givenQuarantinedTests(quarantined) givenEarlyFlakinessDetectionEnabled(true) diff --git a/dd-java-agent/instrumentation/testng/testng-7/src/test/resources/test-quarantined-failed-7/events.ftl b/dd-java-agent/instrumentation/testng/testng-7/src/test/resources/test-quarantined-failed-7/events.ftl index 65f4bf6b328..c4161a5e22a 100644 --- a/dd-java-agent/instrumentation/testng/testng-7/src/test/resources/test-quarantined-failed-7/events.ftl +++ b/dd-java-agent/instrumentation/testng/testng-7/src/test/resources/test-quarantined-failed-7/events.ftl @@ -104,6 +104,7 @@ "test.framework" : "testng", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -136,6 +137,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "testng-7", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/testng/testng-7/src/test/resources/test-quarantined-failed-atr-7/events.ftl b/dd-java-agent/instrumentation/testng/testng-7/src/test/resources/test-quarantined-failed-atr-7/events.ftl index f1039d9b205..2e0cd3b7280 100644 --- a/dd-java-agent/instrumentation/testng/testng-7/src/test/resources/test-quarantined-failed-atr-7/events.ftl +++ b/dd-java-agent/instrumentation/testng/testng-7/src/test/resources/test-quarantined-failed-atr-7/events.ftl @@ -317,6 +317,7 @@ "test.framework" : "testng", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -349,6 +350,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "testng-7", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/testng/testng-7/src/test/resources/test-quarantined-failed-efd/events.ftl b/dd-java-agent/instrumentation/testng/testng-7/src/test/resources/test-quarantined-failed-efd/events.ftl index 335d848e69b..8d957840a86 100644 --- a/dd-java-agent/instrumentation/testng/testng-7/src/test/resources/test-quarantined-failed-efd/events.ftl +++ b/dd-java-agent/instrumentation/testng/testng-7/src/test/resources/test-quarantined-failed-efd/events.ftl @@ -215,6 +215,7 @@ "test.framework" : "testng", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -248,6 +249,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "testng-7", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/testng/testng-7/src/test/resources/test-quarantined-failed-known/events.ftl b/dd-java-agent/instrumentation/testng/testng-7/src/test/resources/test-quarantined-failed-known/events.ftl index 49a6099e0c5..8c3400fc9ac 100644 --- a/dd-java-agent/instrumentation/testng/testng-7/src/test/resources/test-quarantined-failed-known/events.ftl +++ b/dd-java-agent/instrumentation/testng/testng-7/src/test/resources/test-quarantined-failed-known/events.ftl @@ -105,6 +105,7 @@ "test.framework" : "testng", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -138,6 +139,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "testng-7", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-java-agent/instrumentation/testng/testng-7/src/test/resources/test-quarantined-failed-parameterized/events.ftl b/dd-java-agent/instrumentation/testng/testng-7/src/test/resources/test-quarantined-failed-parameterized/events.ftl index 25f435dc2fb..c9a8492b62f 100644 --- a/dd-java-agent/instrumentation/testng/testng-7/src/test/resources/test-quarantined-failed-parameterized/events.ftl +++ b/dd-java-agent/instrumentation/testng/testng-7/src/test/resources/test-quarantined-failed-parameterized/events.ftl @@ -153,6 +153,7 @@ "test.framework" : "testng", "test.framework_version" : ${content_meta_test_framework_version}, "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, @@ -185,6 +186,7 @@ "test.framework_version" : ${content_meta_test_framework_version}, "test.module" : "testng-7", "test.status" : "fail", + "test.test_management.enabled" : "true", "test.type" : "test", "test_session.name" : "session-name" }, diff --git a/dd-trace-api/src/main/java/datadog/trace/api/config/CiVisibilityConfig.java b/dd-trace-api/src/main/java/datadog/trace/api/config/CiVisibilityConfig.java index b8717125778..6601e3265aa 100644 --- a/dd-trace-api/src/main/java/datadog/trace/api/config/CiVisibilityConfig.java +++ b/dd-trace-api/src/main/java/datadog/trace/api/config/CiVisibilityConfig.java @@ -77,6 +77,9 @@ public final class CiVisibilityConfig { public static final String CIVISIBILITY_REMOTE_ENV_VARS_PROVIDER_KEY = "civisibility.remote.env.vars.provider.key"; public static final String CIVISIBILITY_TEST_ORDER = "civisibility.test.order"; + public static final String TEST_MANAGEMENT_ENABLED = "test.management.enabled"; + public static final String TEST_MANAGEMENT_ATTEMPT_TO_FIX_RETRIES = + "test.management.attempt.to.fix.retries"; /* COVERAGE SETTINGS */ public static final String CIVISIBILITY_CODE_COVERAGE_ENABLED = diff --git a/internal-api/src/main/java/datadog/trace/api/Config.java b/internal-api/src/main/java/datadog/trace/api/Config.java index e7b2efbf020..182456cf507 100644 --- a/internal-api/src/main/java/datadog/trace/api/Config.java +++ b/internal-api/src/main/java/datadog/trace/api/Config.java @@ -114,12 +114,14 @@ public static String getHostName() { private final String runtimeVersion; private final String applicationKey; + /** * Note: this has effect only on profiling site. Traces are sent to Datadog agent and are not * affected by this setting. If CI Visibility is used with agentless mode, api key is used when * sending data (including traces) to backend */ private final String apiKey; + /** * Note: this has effect only on profiling site. Traces are sent to Datadog agent and are not * affected by this setting. @@ -373,6 +375,8 @@ public static String getHostName() { private final String ciVisibilityRemoteEnvVarsProviderUrl; private final String ciVisibilityRemoteEnvVarsProviderKey; private final String ciVisibilityTestOrder; + private final boolean ciVisibilityTestManagementEnabled; + private final Integer ciVisibilityTestManagementAttemptToFixRetries; private final boolean remoteConfigEnabled; private final boolean remoteConfigIntegrityCheckEnabled; @@ -1522,6 +1526,9 @@ PROFILING_DATADOG_PROFILER_ENABLED, isDatadogProfilerSafeInCurrentEnvironment()) ciVisibilityRemoteEnvVarsProviderKey = configProvider.getString(CIVISIBILITY_REMOTE_ENV_VARS_PROVIDER_KEY); ciVisibilityTestOrder = configProvider.getString(CIVISIBILITY_TEST_ORDER); + ciVisibilityTestManagementEnabled = configProvider.getBoolean(TEST_MANAGEMENT_ENABLED, true); + ciVisibilityTestManagementAttemptToFixRetries = + configProvider.getInteger(TEST_MANAGEMENT_ATTEMPT_TO_FIX_RETRIES); remoteConfigEnabled = configProvider.getBoolean( @@ -2979,6 +2986,14 @@ public String getCiVisibilityTestOrder() { return ciVisibilityTestOrder; } + public boolean isCiVisibilityTestManagementEnabled() { + return ciVisibilityTestManagementEnabled; + } + + public Integer getCiVisibilityTestManagementAttemptToFixRetries() { + return ciVisibilityTestManagementAttemptToFixRetries; + } + public String getAppSecRulesFile() { return appSecRulesFile; } diff --git a/internal-api/src/main/java/datadog/trace/api/civisibility/telemetry/CiVisibilityCountMetric.java b/internal-api/src/main/java/datadog/trace/api/civisibility/telemetry/CiVisibilityCountMetric.java index 65aa7a6dd75..f6b253d3177 100644 --- a/internal-api/src/main/java/datadog/trace/api/civisibility/telemetry/CiVisibilityCountMetric.java +++ b/internal-api/src/main/java/datadog/trace/api/civisibility/telemetry/CiVisibilityCountMetric.java @@ -33,6 +33,7 @@ import datadog.trace.api.civisibility.telemetry.tag.RetryReason; import datadog.trace.api.civisibility.telemetry.tag.StatusCode; import datadog.trace.api.civisibility.telemetry.tag.TestFrameworkInstrumentation; +import datadog.trace.api.civisibility.telemetry.tag.TestManagementEnabled; import java.util.Arrays; public enum CiVisibilityCountMetric { @@ -120,6 +121,7 @@ public enum CiVisibilityCountMetric { FlakyTestRetriesEnabled.class, ImpactedTestsDetectionEnabled.class, KnownTestsEnabled.class, + TestManagementEnabled.class, RequireGit.class), /** The number of requests sent to the itr skippable tests endpoint */ ITR_SKIPPABLE_TESTS_REQUEST("itr_skippable_tests.request", RequestCompressed.class), diff --git a/internal-api/src/main/java/datadog/trace/api/civisibility/telemetry/tag/TestManagementEnabled.java b/internal-api/src/main/java/datadog/trace/api/civisibility/telemetry/tag/TestManagementEnabled.java new file mode 100644 index 00000000000..79cc49c9fee --- /dev/null +++ b/internal-api/src/main/java/datadog/trace/api/civisibility/telemetry/tag/TestManagementEnabled.java @@ -0,0 +1,12 @@ +package datadog.trace.api.civisibility.telemetry.tag; + +import datadog.trace.api.civisibility.telemetry.TagValue; + +public enum TestManagementEnabled implements TagValue { + TRUE; + + @Override + public String asString() { + return "test_management_enabled:true"; + } +} diff --git a/internal-api/src/main/java/datadog/trace/bootstrap/instrumentation/api/Tags.java b/internal-api/src/main/java/datadog/trace/bootstrap/instrumentation/api/Tags.java index a0bfe78ef10..dfaeb60bcf3 100644 --- a/internal-api/src/main/java/datadog/trace/bootstrap/instrumentation/api/Tags.java +++ b/internal-api/src/main/java/datadog/trace/bootstrap/instrumentation/api/Tags.java @@ -98,6 +98,7 @@ public class Tags { public static final String TEST_IS_MODIFIED = "test.is_modified"; public static final String TEST_HAS_FAILED_ALL_RETRIES = "test.has_failed_all_retries"; public static final String TEST_MANAGEMENT_IS_QUARANTINED = "test.management.is_quarantined"; + public static final String TEST_TEST_MANAGEMENT_ENABLED = "test.test_management.enabled"; public static final String CI_PROVIDER_NAME = "ci.provider.name"; public static final String CI_PIPELINE_ID = "ci.pipeline.id";