Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Feature: allow custom tags on JUnit 4 ignored tests (onTestIgnore / fireTestIgnored)

Open
#11,438 1 comment 0 reactions 1 assignee View on GitHub

@daniel-mohedano is already working on this.

Since May 22, 2026.

Assessment

This issue has not been assessed yet.

Description

type: feature request
Library Name

dd-java-agent

Library Version(s)

1.60.3

Describe the feature you'd like
Section Content
Problem Need is_ignored custom tags (and optional skip reason) on agent-reported ignored tests in CI with javaagent + Gradle.
Current behavior onTestIgnore does start → skip → end synchronously; app RunListener.testIgnored runs outside that window, so Span.current() / manual DDTest either don’t tag the agent test or create a second session (suite conflicts).
Desired behavior Hook to set tags on the same test span Datadog creates for @Ignore / fireTestIgnored, e.g. public API, TestEventsHandler callback, or documented extension point.
Environment JUnit 4, dd-java-agent 1.60.3, Kotlin kotlin.test.Ignore + JVM Robolectric, Buildkite.
Is your feature request related to a problem?

I try to set custom tag on @Ignore test with Datadog Test Optimization with Java Tests on an android project, and notice that there is no active span, as Span.current() is not working for @Ignore test.

Below is the sample code:

class TestIgnoredListener : RunListener() {
    override fun testIgnored(description: Description) {
        Span.current().setAttribute("is_ignored", true)
    }
}

class CustomRobolectricTestRunner(testClass: Class<*>) : RobolectricTestRunner(testClass) {
    ...
    override fun run(notifier: RunNotifier) {
        notifier.addListener(TestIgnoredListener())
        super.run(notifier)
    }
    ...
}

@RunWith(CustomRobolectricTestRunner::class)
class CreateThreadPickMediaTest {
    ...
    @Test
    @Ignore(
        "java.lang.SecurityException: " +
            "Permission Denial: opening provider com.android.providers.media.MediaDocumentsProvider" +
            " requires that you obtain access using ACTION_OPEN_DOCUMENT or related APIs"
    )
    fun givenPickMediaIntent_whenPickMedia_thenImagePreviewContentIsShown() {
        ...
    }
    ...
}
Describe alternatives you've considered

Tried Manual Testing API (CIVisibility + DDTest#setTag) only without javaagent, too much works to write all the RunListener on my own (similar to dd-java-agent JUnit4TracingListener).

Additional context

No response

Dominant language
Java
Stars
737
Forks
361
Avg merge
3d 20h
Merged PRs (30d)
173

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from DataDog/dd-trace-java

All issues in DataDog/dd-trace-java

Similar issues

More Java issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.