You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The @Testable annotation is a useful tool for TestEngine developers to facilitate the integration of custom tests executed by our own test engine with IDEs.
You can define the following annotation class for your test engine.
However, it introduces a transitive dependency on junit-platform-commons, which includes a number of unnecessary utility classes for this use case, such as LruCache.
Deliverables
Create a new Maven artifact named junit-platform-commons-api and move the @Testable annotation to it.
The text was updated successfully, but these errors were encountered:
sbrannen
changed the title
Move the @Testable annotation to a new junit-platform-commons-api artifact
Move @Testable to a new junit-platform-commons-api artifact
Apr 4, 2025
I understand the desire to have a "lightweight" artifact that only contains @Testable; however, it's very late in the game to be making a change like that which could potentially break projects, build tools, and IDEs.
In addition, publishing a new artifact that contains a single annotation does not seem to warrant such a risk.
In light of that, I am inclined to decline this request; however, we will discuss it within the team.
I just tried this out myself to see what IntelliJ currently supports. It seems it only works if junit-platform-commons is on the compile classpath of the project using the @MyTest annotation. I had hoped it would be sufficient to use compileOnly("org.junit.platform:junit-platform-commons") in the project declaring MyTest but even implementation isn't sufficient.
@yuuki3655 I don't know how this feature is implemented in IntelliJ but maybe you could ask them if they could consider annotations to be annotated with @Testable even if the type is not on the compile classpath?
The
@Testable
annotation is a useful tool forTestEngine
developers to facilitate the integration of custom tests executed by our own test engine with IDEs.You can define the following annotation class for your test engine.
Then, you can use it from your test case.
However, it introduces a transitive dependency on
junit-platform-commons
, which includes a number of unnecessary utility classes for this use case, such asLruCache
.Deliverables
junit-platform-commons-api
and move the@Testable
annotation to it.The text was updated successfully, but these errors were encountered: