Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Plugin does not work with JUnit Jupiter 5.8.x #300

Closed
x80486 opened this issue Sep 19, 2021 · 5 comments
Closed

Plugin does not work with JUnit Jupiter 5.8.x #300

x80486 opened this issue Sep 19, 2021 · 5 comments
Labels

Comments

@x80486
Copy link

x80486 commented Sep 19, 2021

I'm using the info.solidsoft.pitest version 1.6.0 Gradle plugin with JUnit Jupiter:

pitest {
  exportLineCoverage.set(true)
  junit5PluginVersion.set("0.12")
  outputFormats.set(["HTML", "XML"])
  targetClasses.set(["org.acme.*"])
  timestampedReports.set(false)
}

This works fine with JUnit version 5.7.x, but the newer 5.8.x breaks the pitest task with something like this:

[x80486@uplink:~/Workshop/gradle-template]$ ./gradlew clean pitest 
To honour the JVM settings for this build a single-use Daemon process will be forked. See https://docs.gradle.org/7.2/userguide/gradle_daemon.html#sec:disabling_the_daemon.
Daemon will be stopped at the end of the build 
Reckoned version: 0.5.3-SNAPSHOT
> Task :clean
> Task :compileJava
> Task :generateGitProperties
> Task :processResources
> Task :classes
> Task :compileTestJava
> Task :processTestResources
> Task :testClasses

> Task :pitest FAILED
10:04:10 PM PIT >> INFO : ---------------------------------------------------------------------------
10:04:10 PM PIT >> INFO : Enabled (+) and disabled (-) features.
10:04:10 PM PIT >> INFO : -----------------------------------------
10:04:10 PM PIT >> INFO : +FANN           Filters mutations in classes and methods with matching annotations of class or runtime retention
10:04:10 PM PIT >> INFO :   [annotation]    Annotation to avoid (full package name not required)
10:04:10 PM PIT >> INFO : +FENUM          Filters mutations in enum constructors
10:04:10 PM PIT >> INFO : +FFBLOCK        Filters mutations in code duplicated by finally block inlining
10:04:10 PM PIT >> INFO : +FFEACH         Filters mutations in compiler generated code that implements for each loops
10:04:10 PM PIT >> INFO : +FFLOOP         Filters any mutations to increments in for loops as they may cause timeouts
10:04:10 PM PIT >> INFO : +FINFINC        Filters mutations to increments that may cause infinite loops
10:04:10 PM PIT >> INFO : +FINFIT         Filters mutations that may cause infinite loops by removing calls to iterator.next
10:04:10 PM PIT >> INFO : +FINULL         Filters mutations in compiler generated code that checks for null by calling getClass
10:04:10 PM PIT >> INFO : +FKOTLIN        Filters out junk mutations in bytecode created by compiler for kotlin language features
10:04:10 PM PIT >> INFO : +FLOGCALL       Filters mutations in code that makes calls to logging frameworks
10:04:10 PM PIT >> INFO : +FMRNULL        Filters mutations in compiler generated code that inserts Objects.requireNonNull for method references
10:04:10 PM PIT >> INFO : +FRETEQUIV      Filters return vals mutants with bytecode equivalent to the unmutated class
10:04:10 PM PIT >> INFO : +FSEQUIVEQUALS  Filters equivalent mutations that affect only performance in short cutting equals methods
10:04:10 PM PIT >> INFO : +FSTATI         Filters mutations in static initializers and code called only from them
10:04:10 PM PIT >> INFO : +FSTATINIT      Filters mutations in static initializers and code called only from them
10:04:10 PM PIT >> INFO : +FTRYWR         Filters mutations in code generated for try with resources statements
10:04:10 PM PIT >> INFO : +_internal_activate_by_output_string
10:04:10 PM PIT >> INFO : -CLASSLIMIT     Limits the maximum number of mutations per class
10:04:10 PM PIT >> INFO :   [limit]         Integer value for maximum mutations to create per class
10:04:10 PM PIT >> INFO : -EXPORT         Exports mutants bytecode and other details to disk
10:04:10 PM PIT >> INFO : ---------------------------------------------------------------------------
10:04:10 PM PIT >> FINE : Running report with ReportOptions [targetClasses=[org.acme.*], excludedMethods=[], excludedClasses=[], excludedTestClasses=[], codePaths=[/home/x80486/Workshop/gradle-template/build/classes/java/main], reportDir=/home/x80486/Workshop/gradle-template/build/reports/pitest, historyInputLocation=null, historyOutputLocation=null, sourceDirs=[/home/x80486/Workshop/gradle-template/src/main/resources, /home/x80486/Workshop/gradle-template/src/main/java], classPathElements=[/home/x80486/.gradle/caches/modules-2/files-2.1/org.pitest/pitest-junit5-plugin/0.12/6e1ee587a3457b0e7d636a5ce2e554fac62ec99/pitest-junit5-plugin-0.12.jar, /home/x80486/.gradle/caches/modules-2/files-2.1/org.pitest/pitest/1.6.3/5971784b9a846ba5e33db4e0e4be13619358c1d5/pitest-1.6.3.jar, /home/x80486/Workshop/gradle-template/build/classes/java/test, /home/x80486/Workshop/gradle-template/build/resources/test, /home/x80486/Workshop/gradle-template/build/classes/java/main, /home/x80486/Workshop/gradle-template/build/resources/main, /home/x80486/.gradle/caches/modules-2/files-2.1/ch.qos.logback/logback-classic/1.2.6/b09efa852337fa0dd9859614389eec58dc287116/logback-classic-1.2.6.jar, /home/x80486/.gradle/caches/modules-2/files-2.1/io.github.cdimascio/dotenv-java/2.2.0/fd7d87e8f0c68bcd5610114102a53118ae65db9/dotenv-java-2.2.0.jar, /home/x80486/.gradle/caches/modules-2/files-2.1/org.apache.commons/commons-lang3/3.12.0/c6842c86792ff03b9f1d1fe2aab8dc23aa6c6f0e/commons-lang3-3.12.0.jar, /home/x80486/.gradle/caches/modules-2/files-2.1/org.slf4j/slf4j-api/1.7.32/cdcff33940d9f2de763bc41ea05a0be5941176c3/slf4j-api-1.7.32.jar, /home/x80486/.gradle/caches/modules-2/files-2.1/org.junit.jupiter/junit-jupiter-engine/5.8.0/422c9d0bcaf4c75a801129153b1b1fb8e784af30/junit-jupiter-engine-5.8.0.jar, /home/x80486/.gradle/caches/modules-2/files-2.1/org.junit.jupiter/junit-jupiter-api/5.8.0/1afdba46bfdf3f23de4910f5f257be8d3dcfc3c7/junit-jupiter-api-5.8.0.jar, /home/x80486/.gradle/caches/modules-2/files-2.1/org.junit.platform/junit-platform-engine/1.8.0/df563b4b876815365950929d02adfa4ebc5fcbb2/junit-platform-engine-1.8.0.jar, /home/x80486/.gradle/caches/modules-2/files-2.1/org.junit.platform/junit-platform-commons/1.8.0/db17f7b69968e4b64e3ee979f933aa1d3f8fde8f/junit-platform-commons-1.8.0.jar, /home/x80486/.gradle/caches/modules-2/files-2.1/org.assertj/assertj-core/3.20.2/66f1f0ebd6db2b24e4a731979171da16ba919cd5/assertj-core-3.20.2.jar, /home/x80486/.gradle/caches/modules-2/files-2.1/ch.qos.logback/logback-core/1.2.6/25be1abb32e870ff042e698a799b56587e0dca9a/logback-core-1.2.6.jar, /home/x80486/.gradle/caches/modules-2/files-2.1/org.opentest4j/opentest4j/1.2.0/28c11eb91f9b6d8e200631d46e20a7f407f2a046/opentest4j-1.2.0.jar], mutators=[], features=[], dependencyAnalysisMaxDistance=-1, jvmArgs=[-Djava.awt.headless=true], numberOfThreads=1, timeoutFactor=1.25, timeoutConstant=4000, targetTests=[^org\.acme\..*$], loggingClasses=[], maxMutationsPerClass=0, verbose=true, failWhenNoMutations=true, outputs=[HTML, XML], groupConfig=TestGroupConfig [excludedGroups=[], includedGroups=[]], fullMutationMatrix=false, mutationUnitSize=0, shouldCreateTimestampedReports=false, detectInlinedCode=false, exportLineCoverage=true, mutationThreshold=0, testStrengthThreshold=0, coverageThreshold=0, mutationEngine=gregor, javaExecutable=null, includeLaunchClasspath=false, properties={}, maxSurvivors=-1, excludedRunners=[], includedTestMethods=[], testPlugin=junit5, useClasspathJar=false, skipFailingTests=false]
10:04:10 PM PIT >> FINE : System class path is /home/x80486/.gradle/caches/modules-2/files-2.1/org.pitest/pitest-command-line/1.6.3/92e4353a534a2323229db2f34819953fe5fc51f9/pitest-command-line-1.6.3.jar:/home/x80486/.gradle/caches/modules-2/files-2.1/org.pitest/pitest-junit5-plugin/0.12/6e1ee587a3457b0e7d636a5ce2e554fac62ec99/pitest-junit5-plugin-0.12.jar:/home/x80486/.gradle/caches/modules-2/files-2.1/org.pitest/pitest-entry/1.6.3/280b75eebd7e2feb5255e5b492845006f9a3f0a5/pitest-entry-1.6.3.jar:/home/x80486/.gradle/caches/modules-2/files-2.1/org.pitest/pitest/1.6.3/5971784b9a846ba5e33db4e0e4be13619358c1d5/pitest-1.6.3.jar
10:04:10 PM PIT >> FINE : Maximum available memory is 7992 mb
10:04:10 PM PIT >> FINE : MINION : Installing PIT agent
10:04:10 PM PIT >> INFO : Sending 2 test classes to minion
10:04:10 PM PIT >> INFO : Sent tests to minion
10:04:10 PM PIT >> INFO : MINION : 10:04:10 PM PIT >> FINE : Expecting 2 tests classes from parent
10:04:10 PM PIT >> INFO : MINION : 10:04:10 PM PIT >> FINE : Tests classes received
10:04:10 PM PIT >> INFO : MINION : 10:04:10 PM PIT >> INFO : Checking environment
10:04:10 PM PIT >> FINE : MINION : org.junit.platform.commons.JUnitException: TestEngine with ID 'junit-jupiter' failed to discover tests
10:04:10 PM PIT >> FINE : MINION :      at org.junit.platform.launcher.core.DefaultLauncher.discoverEngineRoot(DefaultLauncher.java:189)
10:04:10 PM PIT >> FINE : MINION :      at org.junit.platform.launcher.core.DefaultLauncher.discoverRoot(DefaultLauncher.java:168)
10:04:10 PM PIT >> FINE : MINION :      at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:132)
10:04:10 PM PIT >> FINE : MINION :      at org.pitest.junit5.JUnit5TestUnitFinder.findTestUnits(JUnit5TestUnitFinder.java:79)
10:04:10 PM PIT >> FINE : MINION :      at org.pitest.testapi.execute.FindTestUnits.findTestUnits(FindTestUnits.java:57)
10:04:10 PM PIT >> FINE : MINION :      at org.pitest.testapi.execute.FindTestUnits.getTestUnits(FindTestUnits.java:40)
10:04:10 PM PIT >> FINE : MINION :      at org.pitest.testapi.execute.FindTestUnits.findTestUnitsForAllSuppliedClasses(FindTestUnits.java:29)
10:04:10 PM PIT >> FINE : MINION :      at org.pitest.coverage.execute.CoverageMinion.discoverTests(CoverageMinion.java:155)
10:04:10 PM PIT >> FINE : MINION :      at org.pitest.coverage.execute.CoverageMinion.getTestsFromParent(CoverageMinion.java:136)
10:04:10 PM PIT >> FINE : MINION :      at org.pitest.coverage.execute.CoverageMinion.main(CoverageMinion.java:83)
10:04:10 PM PIT >> FINE : MINION : Caused by: org.junit.platform.commons.JUnitException: ClassSelector [className = 'org.acme.ApplicationTest'] resolution failed
10:04:10 PM PIT >> FINE : MINION :      at org.junit.platform.launcher.listeners.discovery.AbortOnFailureLauncherDiscoveryListener.selectorProcessed(AbortOnFailureLauncherDiscoveryListener.java:39)
10:04:10 PM PIT >> FINE : MINION :      at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.resolveCompletely(EngineDiscoveryRequestResolution.java:102)
10:04:10 PM PIT >> FINE : MINION :      at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.run(EngineDiscoveryRequestResolution.java:82)
10:04:10 PM PIT >> FINE : MINION :      at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolver.resolve(EngineDiscoveryRequestResolver.java:113)
10:04:10 PM PIT >> FINE : MINION :      at org.junit.jupiter.engine.discovery.DiscoverySelectorResolver.resolveSelectors(DiscoverySelectorResolver.java:46)
10:04:10 PM PIT >> FINE : MINION :      at org.junit.jupiter.engine.JupiterTestEngine.discover(JupiterTestEngine.java:69)
10:04:10 PM PIT >> FINE : MINION :      at org.junit.platform.launcher.core.DefaultLauncher.discoverEngineRoot(DefaultLauncher.java:181)
10:04:10 PM PIT >> FINE : MINION :      ... 9 more
10:04:10 PM PIT >> FINE : MINION : Caused by: java.lang.NoSuchMethodError: 'java.util.Optional org.junit.platform.commons.util.AnnotationUtils.findAnnotation(java.lang.Class, java.lang.Class, boolean)'
10:04:10 PM PIT >> FINE : MINION :      at org.junit.jupiter.engine.descriptor.DisplayNameUtils.getDisplayNameGenerator(DisplayNameUtils.java:110)
10:04:10 PM PIT >> FINE : MINION :      at org.junit.jupiter.engine.descriptor.DisplayNameUtils.lambda$createDisplayNameSupplierForClass$2(DisplayNameUtils.java:98)
10:04:10 PM PIT >> FINE : MINION :      at org.junit.jupiter.engine.descriptor.DisplayNameUtils.determineDisplayName(DisplayNameUtils.java:88)
10:04:10 PM PIT >> FINE : MINION :      at org.junit.jupiter.engine.descriptor.JupiterTestDescriptor.<init>(JupiterTestDescriptor.java:69)
10:04:10 PM PIT >> FINE : MINION :      at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.<init>(ClassBasedTestDescriptor.java:96)
10:04:10 PM PIT >> FINE : MINION :      at org.junit.jupiter.engine.descriptor.ClassTestDescriptor.<init>(ClassTestDescriptor.java:51)
10:04:10 PM PIT >> FINE : MINION :      at org.junit.jupiter.engine.discovery.ClassSelectorResolver.newClassTestDescriptor(ClassSelectorResolver.java:119)
10:04:10 PM PIT >> FINE : MINION :      at org.junit.jupiter.engine.discovery.ClassSelectorResolver.lambda$resolve$0(ClassSelectorResolver.java:71)
10:04:10 PM PIT >> FINE : MINION :      at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution$DefaultContext.createAndAdd(EngineDiscoveryRequestResolution.java:246)
10:04:10 PM PIT >> FINE : MINION :      at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution$DefaultContext.addToParent(EngineDiscoveryRequestResolution.java:209)
10:04:10 PM PIT >> FINE : MINION :      at org.junit.jupiter.engine.discovery.ClassSelectorResolver.resolve(ClassSelectorResolver.java:71)
10:04:10 PM PIT >> FINE : MINION :      at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.lambda$resolve$2(EngineDiscoveryRequestResolution.java:134)
10:04:10 PM PIT >> FINE : MINION :      at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
10:04:10 PM PIT >> FINE : MINION :      at java.base/java.util.ArrayList$ArrayListSpliterator.tryAdvance(ArrayList.java:1632)
10:04:10 PM PIT >> FINE : MINION :      at java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:127)
10:04:10 PM PIT >> FINE : MINION :      at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:502)
10:04:10 PM PIT >> FINE : MINION :      at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:488)
10:04:10 PM PIT >> FINE : MINION :      at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
10:04:10 PM PIT >> INFO : MINION : 10:04:10 PM PIT >> SEVERE : Error calculating coverage. Process will exit.
10:04:10 PM PIT >> FINE : MINION :      at java.base/java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:150)
10:04:10 PM PIT >> INFO : MINION : org.junit.platform.commons.JUnitException: TestEngine with ID 'junit-jupiter' failed to discover tests
10:04:10 PM PIT >> FINE : MINION :      at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
10:04:10 PM PIT >> INFO : MINION :      at org.junit.platform.launcher.core.DefaultLauncher.discoverEngineRoot(DefaultLauncher.java:189)
10:04:10 PM PIT >> FINE : MINION :      at java.base/java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:543)
10:04:10 PM PIT >> INFO : MINION :      at org.junit.platform.launcher.core.DefaultLauncher.discoverRoot(DefaultLauncher.java:168)
10:04:10 PM PIT >> FINE : MINION :      at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.resolve(EngineDiscoveryRequestResolution.java:185)
10:04:10 PM PIT >> INFO : MINION :      at org.junit.platform.launcher.core.DefaultLauncher.execute(DefaultLauncher.java:132)
10:04:10 PM PIT >> FINE : MINION :      at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.resolve(EngineDiscoveryRequestResolution.java:125)
10:04:10 PM PIT >> INFO : MINION :      at org.pitest.junit5.JUnit5TestUnitFinder.findTestUnits(JUnit5TestUnitFinder.java:79)
10:04:10 PM PIT >> FINE : MINION :      at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.resolveCompletely(EngineDiscoveryRequestResolution.java:91)
10:04:10 PM PIT >> INFO : MINION :      at org.pitest.testapi.execute.FindTestUnits.findTestUnits(FindTestUnits.java:57)
10:04:10 PM PIT >> INFO : MINION :      at org.pitest.testapi.execute.FindTestUnits.getTestUnits(FindTestUnits.java:40)
10:04:10 PM PIT >> FINE : MINION :      ... 14 more
10:04:10 PM PIT >> INFO : MINION :      at org.pitest.testapi.execute.FindTestUnits.findTestUnitsForAllSuppliedClasses(FindTestUnits.java:29)
10:04:10 PM PIT >> INFO : MINION :      at org.pitest.coverage.execute.CoverageMinion.discoverTests(CoverageMinion.java:155)
10:04:10 PM PIT >> INFO : MINION :      at org.pitest.coverage.execute.CoverageMinion.getTestsFromParent(CoverageMinion.java:136)
10:04:10 PM PIT >> INFO : MINION :      at org.pitest.coverage.execute.CoverageMinion.main(CoverageMinion.java:83)
10:04:10 PM PIT >> INFO : MINION : Caused by: org.junit.platform.commons.JUnitException: ClassSelector [className = 'org.acme.ApplicationTest'] resolution failed
10:04:10 PM PIT >> INFO : MINION :      at org.junit.platform.launcher.listeners.discovery.AbortOnFailureLauncherDiscoveryListener.selectorProcessed(AbortOnFailureLauncherDiscoveryListener.java:39)
10:04:10 PM PIT >> INFO : MINION :      at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.resolveCompletely(EngineDiscoveryRequestResolution.java:102)
10:04:10 PM PIT >> INFO : MINION :      at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.run(EngineDiscoveryRequestResolution.java:82)
10:04:10 PM PIT >> INFO : MINION :      at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolver.resolve(EngineDiscoveryRequestResolver.java:113)
10:04:10 PM PIT >> INFO : MINION :      at org.junit.jupiter.engine.discovery.DiscoverySelectorResolver.resolveSelectors(DiscoverySelectorResolver.java:46)
10:04:10 PM PIT >> INFO : MINION :      at org.junit.jupiter.engine.JupiterTestEngine.discover(JupiterTestEngine.java:69)
10:04:10 PM PIT >> INFO : MINION :      at org.junit.platform.launcher.core.DefaultLauncher.discoverEngineRoot(DefaultLauncher.java:181)
10:04:10 PM PIT >> INFO : MINION :      ... 9 more
10:04:10 PM PIT >> INFO : MINION : Caused by: java.lang.NoSuchMethodError: 'java.util.Optional org.junit.platform.commons.util.AnnotationUtils.findAnnotation(java.lang.Class, java.lang.Class, boolean)'
10:04:10 PM PIT >> INFO : MINION :      at org.junit.jupiter.engine.descriptor.DisplayNameUtils.getDisplayNameGenerator(DisplayNameUtils.java:110)
10:04:10 PM PIT >> INFO : MINION :      at org.junit.jupiter.engine.descriptor.DisplayNameUtils.lambda$createDisplayNameSupplierForClass$2(DisplayNameUtils.java:98)
10:04:10 PM PIT >> INFO : MINION :      at org.junit.jupiter.engine.descriptor.DisplayNameUtils.determineDisplayName(DisplayNameUtils.java:88)
10:04:10 PM PIT >> INFO : MINION :      at org.junit.jupiter.engine.descriptor.JupiterTestDescriptor.<init>(JupiterTestDescriptor.java:69)
10:04:10 PM PIT >> INFO : MINION :      at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.<init>(ClassBasedTestDescriptor.java:96)
10:04:10 PM PIT >> INFO : MINION :      at org.junit.jupiter.engine.descriptor.ClassTestDescriptor.<init>(ClassTestDescriptor.java:51)
10:04:10 PM PIT >> INFO : MINION :      at org.junit.jupiter.engine.discovery.ClassSelectorResolver.newClassTestDescriptor(ClassSelectorResolver.java:119)
10:04:10 PM PIT >> INFO : MINION :      at org.junit.jupiter.engine.discovery.ClassSelectorResolver.lambda$resolve$0(ClassSelectorResolver.java:71)
10:04:10 PM PIT >> INFO : MINION :      at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution$DefaultContext.createAndAdd(EngineDiscoveryRequestResolution.java:246)
10:04:10 PM PIT >> INFO : MINION :      at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution$DefaultContext.addToParent(EngineDiscoveryRequestResolution.java:209)
10:04:10 PM PIT >> INFO : MINION :      at org.junit.jupiter.engine.discovery.ClassSelectorResolver.resolve(ClassSelectorResolver.java:71)
10:04:10 PM PIT >> INFO : MINION :      at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.lambda$resolve$2(EngineDiscoveryRequestResolution.java:134)
10:04:10 PM PIT >> INFO : MINION :      at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
10:04:10 PM PIT >> SEVERE : Coverage generator Minion exited abnormally due to UNKNOWN_ERROR
10:04:10 PM PIT >> INFO : MINION :      at java.base/java.util.ArrayList$ArrayListSpliterator.tryAdvance(ArrayList.java:1632)
10:04:10 PM PIT >> INFO : MINION :      at java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:127)
10:04:10 PM PIT >> INFO : MINION :      at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:502)
10:04:10 PM PIT >> INFO : MINION :      at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:488)
10:04:10 PM PIT >> INFO : MINION :      at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
10:04:10 PM PIT >> INFO : MINION :      at java.base/java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:150)
10:04:10 PM PIT >> INFO : MINION :      at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
10:04:10 PM PIT >> INFO : MINION :      at java.base/java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:543)
10:04:10 PM PIT >> INFO : MINION :      at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.resolve(EngineDiscoveryRequestResolution.java:185)
10:04:10 PM PIT >> INFO : MINION :      at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.resolve(EngineDiscoveryRequestResolution.java:125)
10:04:10 PM PIT >> INFO : MINION :      at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.resolveCompletely(EngineDiscoveryRequestResolution.java:91)
10:04:10 PM PIT >> INFO : MINION :      ... 14 more
10:04:10 PM PIT >> FINE : No longer able to read stream.
Exception in thread "main" org.pitest.util.PitError: Coverage generation minion exited abnormally!

Please copy and paste the information and the complete stacktrace below when reporting an issue
VM : OpenJDK 64-Bit Server VM
Vendor : Amazon.com Inc.
Version : 11.0.10+9-LTS
Uptime : 546
Input -> 
 1 : -Dfile.encoding=UTF-8
 2 : -Duser.country=US
 3 : -Duser.language=en
 4 : -Duser.variant
BootClassPathSupported : false


Please copy and paste the information and the complete stacktrace below when reporting an issue
VM : OpenJDK 64-Bit Server VM
Vendor : Amazon.com Inc.
Version : 11.0.10+9-LTS
Uptime : 547
Input -> 
 1 : -Dfile.encoding=UTF-8
 2 : -Duser.country=US
 3 : -Duser.language=en
 4 : -Duser.variant
BootClassPathSupported : false

        at org.pitest.util.Unchecked.translateCheckedException(Unchecked.java:20)
        at org.pitest.coverage.execute.DefaultCoverageGenerator.calculateCoverage(DefaultCoverageGenerator.java:105)
        at org.pitest.coverage.execute.DefaultCoverageGenerator.calculateCoverage(DefaultCoverageGenerator.java:51)
        at org.pitest.mutationtest.tooling.MutationCoverage.runReport(MutationCoverage.java:115)
        at org.pitest.mutationtest.tooling.EntryPoint.execute(EntryPoint.java:121)
        at org.pitest.mutationtest.tooling.EntryPoint.execute(EntryPoint.java:50)
        at org.pitest.mutationtest.commandline.MutationCoverageReport.runReport(MutationCoverageReport.java:98)
        at org.pitest.mutationtest.commandline.MutationCoverageReport.main(MutationCoverageReport.java:45)
Caused by: org.pitest.util.PitError: Coverage generation minion exited abnormally!

Please copy and paste the information and the complete stacktrace below when reporting an issue
VM : OpenJDK 64-Bit Server VM
Vendor : Amazon.com Inc.
Version : 11.0.10+9-LTS
Uptime : 546
Input -> 
 1 : -Dfile.encoding=UTF-8
 2 : -Duser.country=US
 3 : -Duser.language=en
 4 : -Duser.variant
BootClassPathSupported : false

        at org.pitest.coverage.execute.DefaultCoverageGenerator.gatherCoverageData(DefaultCoverageGenerator.java:148)
        at org.pitest.coverage.execute.DefaultCoverageGenerator.calculateCoverage(DefaultCoverageGenerator.java:89)
        ... 6 more

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':pitest'.
> Process 'command '/home/x80486/.asdf/installs/java/corretto-11.0.10.9.1/bin/java'' finished with non-zero exit value 1

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

See https://docs.gradle.org/7.2/userguide/command_line_interface.html#sec:command_line_warnings

BUILD FAILED in 6s
7 actionable tasks: 7 executed

Not sure if this is a JUnit problem, or if it does fall on the Pitest side...so starting here 😎

@hcoles
Copy link

hcoles commented Sep 19, 2021

You look to be using version 0.12 of the junit 5 plugin

junit5PluginVersion.set("0.12")

JUnit 5.8.x support was added in 0.15

@szpak
Copy link
Owner

szpak commented Sep 19, 2021

I would suggest the same as Henry.

@szpak szpak added the question label Sep 19, 2021
@x80486
Copy link
Author

x80486 commented Sep 19, 2021

All right, with junit5PluginVersion version 0.15 definitely works. I can't find any references to this parameter — or how it's updated. It's always set at 0.12 in all examples.'

Thanks for the tip 🥳

@x80486 x80486 closed this as completed Sep 19, 2021
@szpak
Copy link
Owner

szpak commented Sep 19, 2021

Good point @x80486. Would you like to create w PR with proposes changes in README? :-)

Probably some information in the https://github.com/szpak/gradle-pitest-plugin#junit-5-plugin-for-pit-support-gradle-pitest-plugin-147 section would be enough.

szpak added a commit that referenced this issue Sep 19, 2021
...(with JUnit Platform 1.8) and pitest-junit5-plugin 0.15.
Also clearly mention which plugin version should be used in README.
@szpak
Copy link
Owner

szpak commented Sep 19, 2021

Sorry for bothering you @x80486. Working on a regression test for JUnit 5.7/5.8, I also updated the README file (will be visible in master together with the 1.7.0 release - probably tomorrow).

Feel free to create an another PR, if you still would like to improve something in the documentation or the project itself :-).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants