Я пытаюсь получить покрытие кода с помощью jenkins и jacoco-плагинов.Интеграция Jenkins jacoco
У меня есть банкомат агента jacoco на машине, где выполняется мое тестирование. Затем я извлекаю дамп и пытаюсь получить покрытие кода на jenkins.
Однако я получаю ошибку ниже,
[JaCoCo plugin] Collecting JaCoCo coverage data...
[JaCoCo plugin] \**/coverage/jacoco.exec;\**/coverage/classes-cov;\**/application/; locations are configured
[JaCoCo plugin] Number of found exec files for pattern \**/coverage/jacoco.exec: 1
[JaCoCo plugin] Saving matched execfiles: /home/ec2-user/slave/workspace/Automation_Code_Coverage_POMS/coverage/jacoco.exec
[JaCoCo plugin] Saving matched class directories for class-pattern: \**/coverage/classes-cov: /home/ec2-user/slave/workspace/Automation_Code_Coverage_POMS/coverage/classes-cov
[JaCoCo plugin] Saving matched source directories for source-pattern: \**/application/:
[JaCoCo plugin] Loading inclusions files..
[JaCoCo plugin] inclusions: [\**/com/test/poms/\**]
[JaCoCo plugin] exclusions: [\**/poms/convertors/\**:\**/poms/scheduler/\**]
ERROR: Publisher 'Record JaCoCo coverage report' aborted due to exception:
java.io.IOException: Error while analyzing class /home/ec2-user/.jenkins/jobs/Automation_Code_Coverage_POMS/builds/43/jacoco/classes/com/test/poms/convertors/DtoToSroConverter.83f57acb46d004b5.class.
at org.jacoco.core.analysis.Analyzer.analyzerError(Analyzer.java:150)
at org.jacoco.core.analysis.Analyzer.analyzeClass(Analyzer.java:144)
at org.jacoco.core.analysis.Analyzer.analyzeAll(Analyzer.java:175)
at org.jacoco.core.analysis.Analyzer.analyzeAll(Analyzer.java:208)
at hudson.plugins.jacoco.ExecutionFileLoader.analyzeStructure(ExecutionFileLoader.java:126)
at hudson.plugins.jacoco.ExecutionFileLoader.loadBundleCoverage(ExecutionFileLoader.java:133)
at hudson.plugins.jacoco.JacocoReportDir.parse(JacocoReportDir.java:102)
at hudson.plugins.jacoco.JacocoBuildAction.loadRatios(JacocoBuildAction.java:291)
at hudson.plugins.jacoco.JacocoBuildAction.load(JacocoBuildAction.java:273)
at hudson.plugins.jacoco.JacocoPublisher.perform(JacocoPublisher.java:371)
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:779)
at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:726)
at hudson.model.Build$BuildExecution.post2(Build.java:185)
at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:671)
at hudson.model.Run.execute(Run.java:1769)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
at hudson.model.ResourceController.execute(ResourceController.java:98)
at hudson.model.Executor.run(Executor.java:374)
Caused by: java.lang.IllegalStateException: Can't add different class with same name: com/test/poms/convertors/DtoToSroConverter
at org.jacoco.core.analysis.CoverageBuilder.visitCoverage(CoverageBuilder.java:106)
at org.jacoco.core.analysis.Analyzer$1.visitEnd(Analyzer.java:92)
at org.objectweb.asm.ClassVisitor.visitEnd(ClassVisitor.java:317)
at org.jacoco.core.internal.flow.ClassProbesAdapter.visitEnd(ClassProbesAdapter.java:98)
at org.objectweb.asm.ClassReader.accept(ClassReader.java:697)
at org.objectweb.asm.ClassReader.accept(ClassReader.java:506)
at org.jacoco.core.analysis.Analyzer.analyzeClass(Analyzer.java:107)
at org.jacoco.core.analysis.Analyzer.analyzeClass(Analyzer.java:142)
... 17 more
Notifying upstream projects of job completion
JaCoCo Can't add different class with same name: org/hamcrest/BaseDescription выше ссылки предлагает исключить файлы, но если вы посмотрите на вышеуказанных журналах, они уже исключены, но я все еще вижу этот вопрос ,
Можете ли вы вставить моментальный снимок конфигурации плагина в задание Дженкинса. Почему есть обратная косая черта \ перед ** –
, которая используется с использованием 2 *, создаст смелый шаблон в обмене стеками, и я должен был преодолеть его. –