2017-02-15 2 views
1

Я пытаюсь настроить работу Дженкинс с заводным сценарием после сборки, где мне нужно, чтобы получить покрытие линии сгенерирована с помощью CoberturaКак получить доступ покрытия Cobertura линии в заводном сценарии во время Дженкинс запуска

percentage = build.getAction(hudson.plugins.cobertura.CoberturaBuildAction.class).getLineCoverage().getPercentageFloat(); 

groovy.lang.MissingMethodException: No signature of method: hudson.plugins.cobertura.CoberturaBuildAction.getLineCoverage() is applicable for argument types:() values: [] 
at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:55) 
at org.codehaus.groovy.runtime.callsite.PojoMetaClassSite.call(PojoMetaClassSite.java:46) 
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:42) 
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:108) 
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:112) 
at Script1.coverage(Script1.groovy:5) 
at Script1$coverage.callCurrent(Unknown Source) 
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(CallSiteArray.java:46) 
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:133) 
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:141) 
at Script1.run(Script1.groovy:19) 
at groovy.lang.GroovyShell.evaluate(GroovyShell.java:580) 
at groovy.lang.GroovyShell.evaluate(GroovyShell.java:618) 
at groovy.lang.GroovyShell.evaluate(GroovyShell.java:589) 
at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SecureGroovyScript.evaluate(SecureGroovyScript.java:166) 
at org.jvnet.hudson.plugins.groovypostbuild.GroovyPostbuildRecorder.perform(GroovyPostbuildRecorder.java:362) 
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20) 
at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:772) 
at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:736) 
at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.post2(MavenModuleSetBuild.java:1040) 
at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:685) 
at hudson.model.Run.execute(Run.java:1757) 
at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:529) 
at hudson.model.ResourceController.execute(ResourceController.java:88) 
at hudson.model.Executor.run(Executor.java:234) 

ответ

2

Попробуйте это

import hudson.plugins.cobertura.targets.CoverageMetric; 

percentage = build.getAction(hudson.plugins.cobertura.CoberturaBuildAction.class).getResults()[CoverageMetric.LINE].getPercentageFloat(); 
+0

Он работал как шарм, спасибо – Viswa

Смежные вопросы