Explicit Test Names
For dynamic tests, Konsist can't obtain the current test's name. Test name may be correctly displayed in the IDE, however, the testName
argument should be provided to enable:
Correct test names are displayed in the log when the test is failing
Test suppression (See Suppress Konsist Test)
The testName
argument should be passed to assertX
methods such as assertTrue
, assertFalse
etc. Let's look at the code:
Konsist.scopeFromProject()
.classes()
.assertTrue(testName = "My test name") { ... } //passed test name
Here is the summary of test frameworks:
JUnit4
static
Not required
JUnit5
static
Not required
JUnit5
dynamic
Recommended
Kotest
dynamic
Recommended
Here is a concrete implementation passing he testName
argument for each test Framework:
JUnit 5 introduced native support for dynamic tests, however, it also supports static tests. For static test testName
does not have to be passed as it can be internally retrieved by Konsist.
@Test
fun myTest() {
Konsist.scopeFromProject()
.classes()
.assertTrue { ... }
}
Last updated