Pipeline conversion of MSTest to JUnit using XUnit

803 views
Skip to first unread message

Thiago Carvalho Davila

unread,
May 17, 2017, 10:59:15 AM5/17/17
to jenkins...@googlegroups.com
Hi,

I've been trying to convert MSTests using pipeline, and I've been struggling to make a step for that:

                step([$class: 'XUnitBuilder', thresholds: [[$class: 'FailedThreshold', unstableThreshold: '1']], tools: [[$class: 'MSTest', pattern: 'TestResults\\*.trx']]])

For this I get the error log:
java.lang.IllegalArgumentException: Could not instantiate {delegate={$class=XUnitBuilder, thresholds=[{$class=FailedThreshold, unstableThreshold=1}], tools=[{$class=MSTest, pattern=TestResults\*.trx}]}} for CoreStep(delegate: SimpleBuildStep{AnalysisPublisher(canComputeNew?: boolean, canResolveRelativePaths?: boolean, canRunOnFailed?: boolean, checkStyleActivated?: boolean, defaultEncoding?: String, dryActivated?: boolean, failedNewAll?: String, failedNewHigh?: String, failedNewLow?: String, failedNewNormal?: String, failedTotalAll?: String, failedTotalHigh?: String, failedTotalLow?: String, failedTotalNormal?: String, findBugsActivated?: boolean, healthy?: String, openTasksActivated?: boolean, pmdActivated?: boolean, shouldDetectModules?: boolean, thresholdLimit?: String, unHealthy?: String, unstableNewAll?: String, unstableNewHigh?: String, unstableNewLow?: String, unstableNewNormal?: String, unstableTotalAll?: String, unstableTotalHigh?: String, unstableTotalLow?: String, unstableTotalNormal?: String, useDeltaValues?: boolean, usePreviousBuildAsReference?: boolean, useStableBuildAsReference?: boolean, warningsActivated?: boolean) | ArtifactArchiver(artifacts: String, allowEmptyArchive?: boolean, caseSensitive?: boolean, defaultExcludes?: boolean, excludes?: String, fingerprint?: boolean, onlyIfSuccessful?: boolean) | CheckStylePublisher(canComputeNew?: boolean, canResolveRelativePaths?: boolean, canRunOnFailed?: boolean, defaultEncoding?: String, failedNewAll?: String, failedNewHigh?: String, failedNewLow?: String, failedNewNormal?: String, failedTotalAll?: String, failedTotalHigh?: String, failedTotalLow?: String, failedTotalNormal?: String, healthy?: String, pattern?: String, shouldDetectModules?: boolean, thresholdLimit?: String, unHealthy?: String, unstableNewAll?: String, unstableNewHigh?: String, unstableNewLow?: String, unstableNewNormal?: String, unstableTotalAll?: String, unstableTotalHigh?: String, unstableTotalLow?: String, unstableTotalNormal?: String, useDeltaValues?: boolean, usePreviousBuildAsReference?: boolean, useStableBuildAsReference?: boolean) | CoberturaPublisher(autoUpdateHealth?: boolean, autoUpdateStability?: boolean, coberturaReportFile?: String, failNoReports?: boolean, failUnhealthy?: boolean, failUnstable?: boolean, maxNumberOfBuilds?: int, onlyStable?: boolean, sourceEncoding?: SourceEncoding[ASCII, Big5, Big5_HKSCS, Big5_Solaris, Cp037, Cp1006, Cp1025, Cp1026, Cp1046, Cp1047, Cp1097, Cp1098, Cp1112, Cp1122, Cp1123, Cp1124, Cp1140, Cp1141, Cp1142, Cp1143, Cp1144, Cp1145, Cp1146, Cp1147, Cp1148, Cp1149, Cp1250, Cp1251, Cp1252, Cp1253, Cp1254, Cp1255, Cp1256, Cp1257, Cp1258, Cp1381, Cp1383, Cp273, Cp277, Cp278, Cp280, Cp284, Cp285, Cp297, Cp33722, Cp420, Cp424, Cp437, Cp500, Cp737, Cp775, Cp838, Cp850, Cp852, Cp855, Cp856, Cp857, Cp858, Cp860, Cp861, Cp862, Cp863, Cp864, Cp865, Cp866, Cp868, Cp869, Cp870, Cp871, Cp874, Cp875, Cp918, Cp921, Cp922, Cp930, Cp933, Cp935, Cp937, Cp939, Cp942, Cp942C, Cp943, Cp943C, Cp948, Cp949, Cp949C, Cp950, Cp964, Cp970, EUC_CN, EUC_JP, EUC_JP_LINUX, EUC_JP_Solaris, EUC_KR, EUC_TW, GB18030, GBK, ISCII91, ISO2022_CN_CNS, ISO2022_CN_GB, ISO2022CN, ISO2022JP, ISO2022KR, ISO8859_1, ISO8859_13, ISO8859_15, ISO8859_2, ISO8859_3, ISO8859_4, ISO8859_5, ISO8859_6, ISO8859_7, ISO8859_8, ISO8859_9, JISAutoDetect, KOI8_R, MacArabic, MacCentralEurope, MacCroatian, MacCyrillic, MacDingbat, MacGreek, MacHebrew, MacIceland, MacRoman, MacRomania, MacSymbol, MacThai, MacTurkish, MacUkraine, MS874, MS932, MS936, MS949, MS950, MS950_HKSCS, PCK, SJIS, TIS620, UnicodeBig, UnicodeBigUnmarked, UnicodeLittle, UnicodeLittleUnmarked, UTF_16, UTF_8, x_iso_8859_11, x_Johab], zoomCoverageChart?: boolean) | CopyArtifact(projectName: String, excludes?: String, filter?: String, fingerprintArtifacts?: boolean, flatten?: boolean, optional?: boolean, parameters?: String, resultVariableSuffix?: String, selector?: BuildSelector{DownstreamBuildSelector(upstreamProjectName: String, upstreamBuildNumber: String) | LastCompletedBuildSelector() | MultiJobBuildSelector() | ParameterizedBuildSelector(parameterName: String) | PermalinkBuildSelector(id: String) | PromotedBuildSelector(level: int) | SavedBuildSelector() | SpecificBuildSelector(buildNumber: String) | StatusBuildSelector(stable: boolean) | TriggeredBuildSelector(fallbackToLastSuccessful: boolean, upstreamFilterStrategy: UpstreamFilterStrategy[UseGlobalSetting, UseOldest, UseNewest], allowUpstreamDependencies: boolean) | WorkspaceSelector()}, target?: String) | FindBugsPublisher(canComputeNew?: boolean, canResolveRelativePaths?: boolean, canRunOnFailed?: boolean, defaultEncoding?: String, excludePattern?: String, failedNewAll?: String, failedNewHigh?: String, failedNewLow?: String, failedNewNormal?: String, failedTotalAll?: String, failedTotalHigh?: String, failedTotalLow?: String, failedTotalNormal?: String, healthy?: String, includePattern?: String, isRankActivated?: boolean, pattern?: String, shouldDetectModules?: boolean, thresholdLimit?: String, unHealthy?: String, unstableNewAll?: String, unstableNewHigh?: String, unstableNewLow?: String, unstableNewNormal?: String, unstableTotalAll?: String, unstableTotalHigh?: String, unstableTotalLow?: String, unstableTotalNormal?: String, useDeltaValues?: boolean, usePreviousBuildAsReference?: boolean, useStableBuildAsReference?: boolean) | Fingerprinter(targets: String) | GitHubCommitNotifier(resultOnFailure: String, statusMessage?: ExpandableMessage(content: String)) | GitHubCommitStatusSetter(commitShaSource?: GitHubCommitShaSource{BuildDataRevisionShaSource() | ManuallyEnteredShaSource(sha: String)}, contextSource?: GitHubStatusContextSource{DefaultCommitContextSource() | ManuallyEnteredCommitContextSource(context: String)}, errorHandlers?: StatusErrorHandler{ChangingBuildStatusErrorHandler(result: String) | ShallowAnyErrorHandler()}[], reposSource?: GitHubReposSource{AnyDefinedRepositorySource() | ManuallyEnteredRepositorySource(url: String)}, statusBackrefSource?: GitHubStatusBackrefSource{BuildRefBackrefSource() | ManuallyEnteredBackrefSource(backref: String)}, statusResultSource?: GitHubStatusResultSource{ConditionalStatusResultSource(results: ConditionalResult{AnyBuildResult(message?: String, state?: String) | BetterThanOrEqualBuildResult(message?: String, result?: String, state?: String)}[]) | DefaultStatusResultSource()}) | GitHubSetCommitStatusBuilder(contextSource?: GitHubStatusContextSource{DefaultCommitContextSource() | ManuallyEnteredCommitContextSource(context: String)}, statusMessage?: ExpandableMessage(content: String)) | JUnitResultArchiver(testResults: String, allowEmptyResults?: boolean, healthScaleFactor?: double, keepLongStdio?: boolean, testDataPublishers?: TestDataPublisher{}[]) | JavadocArchiver(javadocDir: String, keepAll: boolean) | Mailer(recipients: String, notifyEveryUnstableBuild: boolean, sendToIndividuals: boolean) | NUnitPublisher(testResultsPattern?: String, debug?: boolean, failIfNoResults?: boolean, keepJUnitReports?: boolean, skipJUnitArchiver?: boolean) | PerformancePublisher(sourceDataFiles?: String, errorFailedThreshold: int, errorUnstableThreshold: int, errorUnstableResponseTimeThreshold: String, relativeFailedThresholdPositive: double, relativeFailedThresholdNegative: double, relativeUnstableThresholdPositive: double, relativeUnstableThresholdNegative: double, nthBuildNumber: int, modePerformancePerTestCase: boolean, configType: String, modeOfThreshold: boolean, failBuildIfNoResultFile: boolean, compareBuildPrevious: boolean, modeThroughput: boolean, parsers?: PerformanceReportParser{IagoParser(glob: String) | JMeterCsvParser(glob: String) | JMeterParser(glob: String) | JUnitParser(glob: String) | JmeterSummarizerParser(glob: String) | TaurusParser(glob: String) | WrkSummarizerParser(glob: String)}[], constraints?: java.lang.UnsupportedOperationException: do not know how to categorize attributes of type ? extends hudson.plugins.performance.constraints.AbstractConstraint[], ignoreFailedBuilds?: boolean, ignoreUnstableBuilds?: boolean, modeEvaluation?: boolean, persistConstraintLog?: boolean) | PerformanceTestBuild(params?: String, generatePerformanceTrend?: boolean, printDebugOutput?: boolean, useSystemSitePackages?: boolean, useBztFailCriteria: boolean, useBztExitCode?: boolean) | PmdPublisher(canComputeNew?: boolean, canResolveRelativePaths?: boolean, canRunOnFailed?: boolean, defaultEncoding?: String, failedNewAll?: String, failedNewHigh?: String, failedNewLow?: String, failedNewNormal?: String, failedTotalAll?: String, failedTotalHigh?: String, failedTotalLow?: String, failedTotalNormal?: String, healthy?: String, pattern?: String, shouldDetectModules?: boolean, thresholdLimit?: String, unHealthy?: String, unstableNewAll?: String, unstableNewHigh?: String, unstableNewLow?: String, unstableNewNormal?: String, unstableTotalAll?: String, unstableTotalHigh?: String, unstableTotalLow?: String, unstableTotalNormal?: String, useDeltaValues?: boolean, usePreviousBuildAsReference?: boolean, useStableBuildAsReference?: boolean) | RichTextPublisher(stableText: String, unstableText: String, failedText: String, abortedText: String, unstableAsStable: boolean, failedAsStable: boolean, abortedAsStable: boolean, parserName: String, nullAction: String) | RobotPublisher(outputPath: String, outputFileName: String, disableArchiveOutput: boolean, reportFileName: String, logFileName: String, passThreshold: double, unstableThreshold: double, onlyCritical: boolean, otherFiles: String, enableCache: boolean) | TapPublisher(testResults: String, failIfNoResults: boolean, failedTestsMarkBuildAsFailure: boolean, outputTapToConsole: boolean, enableSubtests: boolean, discardOldReports: boolean, todoIsFailure: boolean, includeCommentDiagnostics: boolean, validateNumberOfTests: boolean, planRequired: boolean, verbose: boolean, showOnlyFailures: boolean, stripSingleParents: boolean, flattenTapResult: boolean, skipIfBuildNotOk: boolean) | TasksPublisher(asRegexp?: boolean, canComputeNew?: boolean, canResolveRelativePaths?: boolean, canRunOnFailed?: boolean, defaultEncoding?: String, excludePattern?: String, failedNewAll?: String, failedNewHigh?: String, failedNewLow?: String, failedNewNormal?: String, failedTotalAll?: String, failedTotalHigh?: String, failedTotalLow?: String, failedTotalNormal?: String, healthy?: String, high?: String, ignoreCase?: boolean, low?: String, normal?: String, pattern?: String, shouldDetectModules?: boolean, thresholdLimit?: String, unHealthy?: String, unstableNewAll?: String, unstableNewHigh?: String, unstableNewLow?: String, unstableNewNormal?: String, unstableTotalAll?: String, unstableTotalHigh?: String, unstableTotalLow?: String, unstableTotalNormal?: String, useDeltaValues?: boolean, usePreviousBuildAsReference?: boolean, useStableBuildAsReference?: boolean) | WarningsPublisher(canComputeNew?: boolean, canResolveRelativePaths?: boolean, canRunOnFailed?: boolean, consoleParsers?: ConsoleParser(parserName: String)[], defaultEncoding?: String, excludePattern?: String, failedNewAll?: String, failedNewHigh?: String, failedNewLow?: String, failedNewNormal?: String, failedTotalAll?: String, failedTotalHigh?: String, failedTotalLow?: String, failedTotalNormal?: String, healthy?: String, includePattern?: String, messagesPattern?: String, parserConfigurations?: ParserConfiguration(pattern: String, parserName: String)[], shouldDetectModules?: boolean, thresholdLimit?: String, unHealthy?: String, unstableNewAll?: String, unstableNewHigh?: String, unstableNewLow?: String, unstableNewNormal?: String, unstableTotalAll?: String, unstableTotalHigh?: String, unstableTotalLow?: String, unstableTotalNormal?: String, useDeltaValues?: boolean, usePreviousBuildAsReference?: boolean, useStableBuildAsReference?: boolean) | WsCleanup(cleanWhenAborted?: boolean, cleanWhenFailure?: boolean, cleanWhenNotBuilt?: boolean, cleanWhenSuccess?: boolean, cleanWhenUnstable?: boolean, cleanupMatrixParent?: boolean, deleteDirs?: boolean, externalDelete?: String, notFailBuild?: boolean, patterns?: Pattern(pattern: String, type: PatternType[INCLUDE, EXCLUDE])[], skipWhenFailed?(deprecated): boolean) | XUnitBuilder(tools: TestType{AUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | BoostTestJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CheckType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CppTestJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CppUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CustomType(pattern: String, customXSL: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | EmbUnitType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | FPCUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | GTesterJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | GoogleTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | JBehavePluginType(pattern: String, failedIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | JUnitType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | MSTestJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | MbUnitType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | NUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | PHPUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | QTestLibType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | UnitTestJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | ValgrindJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | XUnitDotNetTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean)}[], thresholds: XUnitThreshold{FailedThreshold(unstableThreshold: String, unstableNewThreshold: String, failureThreshold: String, failureNewThreshold: String) | SkippedThreshold(unstableThreshold: String, unstableNewThreshold: String, failureThreshold: String, failureNewThreshold: String)}[], thresholdMode: int, testTimeMargin: String) | XUnitPublisher(tools: TestType{AUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | BoostTestJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CheckType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CppTestJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CppUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CustomType(pattern: String, customXSL: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | EmbUnitType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | FPCUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | GTesterJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | GoogleTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | JBehavePluginType(pattern: String, failedIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | JUnitType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | MSTestJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | MbUnitType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | NUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | PHPUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | QTestLibType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | UnitTestJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | ValgrindJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | XUnitDotNetTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean)}[], thresholds: XUnitThreshold{FailedThreshold(unstableThreshold: String, unstableNewThreshold: String, failureThreshold: String, failureNewThreshold: String) | SkippedThreshold(unstableThreshold: String, unstableNewThreshold: String, failureThreshold: String, failureNewThreshold: String)}[], thresholdMode: int, testTimeMargin: String)}): java.lang.IllegalArgumentException: Could not instantiate {thresholds=[{$class=FailedThreshold, unstableThreshold=1}], tools=[{$class=MSTest, pattern=TestResults\*.trx}]} for XUnitBuilder(tools: TestType{AUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | BoostTestJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CheckType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CppTestJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CppUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CustomType(pattern: String, customXSL: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | EmbUnitType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | FPCUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | GTesterJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | GoogleTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | JBehavePluginType(pattern: String, failedIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | JUnitType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | MSTestJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | MbUnitType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | NUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | PHPUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | QTestLibType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | UnitTestJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | ValgrindJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | XUnitDotNetTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean)}[], thresholds: XUnitThreshold{FailedThreshold(unstableThreshold: String, unstableNewThreshold: String, failureThreshold: String, failureNewThreshold: String) | SkippedThreshold(unstableThreshold: String, unstableNewThreshold: String, failureThreshold: String, failureNewThreshold: String)}[], thresholdMode: int, testTimeMargin: String): java.lang.UnsupportedOperationException: no known implementation of class org.jenkinsci.lib.dtkit.type.TestType is named MSTest
	at org.jenkinsci.plugins.structs.describable.DescribableModel.instantiate(DescribableModel.java:264)
	at org.jenkinsci.plugins.workflow.steps.StepDescriptor.newInstance(StepDescriptor.java:194)
	at org.jenkinsci.plugins.workflow.cps.DSL.invokeStep(DSL.java:181)
	at org.jenkinsci.plugins.workflow.cps.DSL.invokeMethod(DSL.java:126)
	at org.jenkinsci.plugins.workflow.cps.CpsScript.invokeMethod(CpsScript.java:108)
	at groovy.lang.GroovyObject$invokeMethod$13.call(Unknown Source)
	at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48)
	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113)
	at org.kohsuke.groovy.sandbox.impl.Checker$1.call(Checker.java:151)
	at org.kohsuke.groovy.sandbox.GroovyInterceptor.onMethodCall(GroovyInterceptor.java:21)
	at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.onMethodCall(SandboxInterceptor.java:115)
	at org.kohsuke.groovy.sandbox.impl.Checker$1.call(Checker.java:149)
	at org.kohsuke.groovy.sandbox.impl.Checker.checkedCall(Checker.java:146)
	at org.kohsuke.groovy.sandbox.impl.Checker.checkedCall(Checker.java:123)
	at com.cloudbees.groovy.cps.sandbox.SandboxInvoker.methodCall(SandboxInvoker.java:16)
	at WorkflowScript.run(WorkflowScript:47)
	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.delegateAndExecute(jar:file:/opt/programas/jenkins/home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:167)
	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.executeSingleStage(jar:file:/opt/programas/jenkins/home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:427)
	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.catchRequiredContextForNode(jar:file:/opt/programas/jenkins/home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:183)
	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.catchRequiredContextForNode(jar:file:/opt/programas/jenkins/home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:181)
	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.executeSingleStage(jar:file:/opt/programas/jenkins/home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:426)
	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.call(jar:file:/opt/programas/jenkins/home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:101)
	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.toolsBlock(jar:file:/opt/programas/jenkins/home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:326)
	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.toolsBlock(jar:file:/opt/programas/jenkins/home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:325)
	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.call(jar:file:/opt/programas/jenkins/home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:99)
	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.withEnvBlock(jar:file:/opt/programas/jenkins/home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:225)
	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.withEnvBlock(jar:file:/opt/programas/jenkins/home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:224)
	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.call(jar:file:/opt/programas/jenkins/home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:98)
	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.withCredentialsBlock(jar:file:/opt/programas/jenkins/home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:262)
	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.withCredentialsBlock(jar:file:/opt/programas/jenkins/home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:261)
	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.call(jar:file:/opt/programas/jenkins/home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:97)
	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.inDeclarativeAgent(jar:file:/opt/programas/jenkins/home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:358)
	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.inDeclarativeAgent(jar:file:/opt/programas/jenkins/home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:357)
	at org.jenkinsci.plugins.pipeline.modeldefinition.ModelInterpreter.call(jar:file:/opt/programas/jenkins/home/plugins/pipeline-model-definition/WEB-INF/lib/pipeline-model-definition.jar!/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy:95)
	at ___cps.transform___(Native Method)
	at com.cloudbees.groovy.cps.impl.ContinuationGroup.methodCall(ContinuationGroup.java:57)
	at com.cloudbees.groovy.cps.impl.FunctionCallBlock$ContinuationImpl.dispatchOrArg(FunctionCallBlock.java:109)
	at com.cloudbees.groovy.cps.impl.FunctionCallBlock$ContinuationImpl.fixArg(FunctionCallBlock.java:82)
	at sun.reflect.GeneratedMethodAccessor1122.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.cloudbees.groovy.cps.impl.ContinuationPtr$ContinuationImpl.receive(ContinuationPtr.java:72)
	at com.cloudbees.groovy.cps.impl.CollectionLiteralBlock$ContinuationImpl.dispatch(CollectionLiteralBlock.java:55)
	at com.cloudbees.groovy.cps.impl.CollectionLiteralBlock$ContinuationImpl.item(CollectionLiteralBlock.java:45)
	at sun.reflect.GeneratedMethodAccessor4638.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.cloudbees.groovy.cps.impl.ContinuationPtr$ContinuationImpl.receive(ContinuationPtr.java:72)
	at com.cloudbees.groovy.cps.impl.CollectionLiteralBlock$ContinuationImpl.dispatch(CollectionLiteralBlock.java:55)
	at com.cloudbees.groovy.cps.impl.CollectionLiteralBlock$ContinuationImpl.item(CollectionLiteralBlock.java:45)
	at sun.reflect.GeneratedMethodAccessor4638.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.cloudbees.groovy.cps.impl.ContinuationPtr$ContinuationImpl.receive(ContinuationPtr.java:72)
	at com.cloudbees.groovy.cps.impl.CollectionLiteralBlock$ContinuationImpl.dispatch(CollectionLiteralBlock.java:55)
	at com.cloudbees.groovy.cps.impl.CollectionLiteralBlock$ContinuationImpl.item(CollectionLiteralBlock.java:45)
	at sun.reflect.GeneratedMethodAccessor4638.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.cloudbees.groovy.cps.impl.ContinuationPtr$ContinuationImpl.receive(ContinuationPtr.java:72)
	at com.cloudbees.groovy.cps.impl.ConstantBlock.eval(ConstantBlock.java:21)
	at com.cloudbees.groovy.cps.Next.step(Next.java:74)
	at com.cloudbees.groovy.cps.Continuable.run0(Continuable.java:154)
	at org.jenkinsci.plugins.workflow.cps.SandboxContinuable.access$001(SandboxContinuable.java:18)
	at org.jenkinsci.plugins.workflow.cps.SandboxContinuable$1.call(SandboxContinuable.java:33)
	at org.jenkinsci.plugins.workflow.cps.SandboxContinuable$1.call(SandboxContinuable.java:30)
	at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.GroovySandbox.runInSandbox(GroovySandbox.java:108)
	at org.jenkinsci.plugins.workflow.cps.SandboxContinuable.run0(SandboxContinuable.java:30)
	at org.jenkinsci.plugins.workflow.cps.CpsThread.runNextChunk(CpsThread.java:165)
	at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.run(CpsThreadGroup.java:330)
	at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup.access$100(CpsThreadGroup.java:82)
	at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call(CpsThreadGroup.java:242)
	at org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$2.call(CpsThreadGroup.java:230)
	at org.jenkinsci.plugins.workflow.cps.CpsVmExecutorService$2.call(CpsVmExecutorService.java:64)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at hudson.remoting.SingleLaneExecutorService$1.run(SingleLaneExecutorService.java:112)
	at jenkins.util.ContextResettingExecutorService$1.run(ContextResettingExecutorService.java:28)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalArgumentException: Could not instantiate {thresholds=[{$class=FailedThreshold, unstableThreshold=1}], tools=[{$class=MSTest, pattern=TestResults\*.trx}]} for XUnitBuilder(tools: TestType{AUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | BoostTestJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CheckType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CppTestJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CppUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | CustomType(pattern: String, customXSL: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | EmbUnitType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | FPCUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | GTesterJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | GoogleTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | JBehavePluginType(pattern: String, failedIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | JUnitType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | MSTestJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | MbUnitType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | NUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | PHPUnitJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | QTestLibType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | UnitTestJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | ValgrindJunitHudsonTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean) | XUnitDotNetTestType(pattern: String, skipNoTestFiles: boolean, failIfNotNew: boolean, deleteOutputFiles: boolean, stopProcessingIfError: boolean)}[], thresholds: XUnitThreshold{FailedThreshold(unstableThreshold: String, unstableNewThreshold: String, failureThreshold: String, failureNewThreshold: String) | SkippedThreshold(unstableThreshold: String, unstableNewThreshold: String, failureThreshold: String, failureNewThreshold: String)}[], thresholdMode: int, testTimeMargin: String): java.lang.UnsupportedOperationException: no known implementation of class org.jenkinsci.lib.dtkit.type.TestType is named MSTest
	at org.jenkinsci.plugins.structs.describable.DescribableModel.instantiate(DescribableModel.java:264)
	at org.jenkinsci.plugins.structs.describable.DescribableModel.coerce(DescribableModel.java:380)
	at org.jenkinsci.plugins.structs.describable.DescribableModel.buildArguments(DescribableModel.java:318)
	at org.jenkinsci.plugins.structs.describable.DescribableModel.instantiate(DescribableModel.java:259)
	at org.jenkinsci.plugins.workflow.steps.StepDescriptor.newInstance(StepDescriptor.java:194)
	at org.jenkinsci.plugins.workflow.cps.DSL.invokeStep(DSL.java:181)
	at org.jenkinsci.plugins.workflow.cps.DSL.invokeMethod(DSL.java:126)
	at org.jenkinsci.plugins.workflow.cps.CpsScript.invokeMethod(CpsScript.java:108)
	at groovy.lang.GroovyObject$invokeMethod$13.call(Unknown Source)
	at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48)
	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113)
	at org.kohsuke.groovy.sandbox.impl.Checker$1.call(Checker.java:151)
	at org.kohsuke.groovy.sandbox.GroovyInterceptor.onMethodCall(GroovyInterceptor.java:21)
	at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxInterceptor.onMethodCall(SandboxInterceptor.java:115)
	at org.kohsuke.groovy.sandbox.impl.Checker$1.call(Checker.java:149)
	at org.kohsuke.groovy.sandbox.impl.Checker.checkedCall(Checker.java:146)
	at org.kohsuke.groovy.sandbox.impl.Checker.checkedCall(Checker.java:123)
	at com.cloudbees.groovy.cps.sandbox.SandboxInvoker.methodCall(SandboxInvoker.java:16)
	... 47 more
Caused by: java.lang.UnsupportedOperationException: no known implementation of class org.jenkinsci.lib.dtkit.type.TestType is named MSTest
	at org.jenkinsci.plugins.structs.describable.DescribableModel.resolveClass(DescribableModel.java:425)
	at org.jenkinsci.plugins.structs.describable.DescribableModel.coerce(DescribableModel.java:379)
	at org.jenkinsci.plugins.structs.describable.DescribableModel.coerceList(DescribableModel.java:461)
	at org.jenkinsci.plugins.structs.describable.DescribableModel.coerce(DescribableModel.java:389)
	at org.jenkinsci.plugins.structs.describable.DescribableModel.buildArguments(DescribableModel.java:318)
	at org.jenkinsci.plugins.structs.describable.DescribableModel.instantiate(DescribableModel.java:259)
	... 64 more

Any hints?

Thanks in advance,

Thiago
-


"Esta mensagem do SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS (SERPRO), empresa pública federal regida pelo disposto na Lei Federal nº 5.615, é enviada exclusivamente a seu destinatário e pode conter informações confidenciais, protegidas por sigilo profissional. Sua utilização desautorizada é ilegal e sujeita o infrator às penas da lei. Se você a recebeu indevidamente, queira, por gentileza, reenviá-la ao emitente, esclarecendo o equívoco."

"This message from SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS (SERPRO) -- a government company established under Brazilian law (5.615/70) -- is directed exclusively to its addressee and may contain confidential data, protected under professional secrecy rules. Its unauthorized use is illegal and may subject the transgressor to the law's penalties. If you're not the addressee, please send it back, elucidating the failure."

Slide

unread,
May 17, 2017, 12:53:48 PM5/17/17
to jenkins...@googlegroups.com
Have you tried using the snippet generator?

--
You received this message because you are subscribed to the Google Groups "Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-use...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/cdc0c3c514fd440e2dded4327475a53a95ad23da%40serpro.gov.br.
For more options, visit https://groups.google.com/d/optout.

Thiago Carvalho Davila

unread,
May 17, 2017, 4:13:14 PM5/17/17
to jenkins...@googlegroups.com
I didn't see xUnit option in snippet generator.

For more options, visit https://groups.google.com/d/optout.

JonathanRRogers

unread,
May 18, 2017, 11:22:37 PM5/18/17
to Jenkins Users, thiago...@serpro.gov.br
I use the junit plugin because it has features xunit doesn't, such as the ability to handle attachments. Despite the name, junit is useful for more than just Java code and can generate reports from any compliant XML files. I use it with files generated by the Python py.test framework. The junit plugin has support in the Snippet Generator and can be used with a simple invocation like "junit 'thing.xml'".
Any hint ...

Joe Cavanaugh

unread,
May 19, 2017, 4:08:16 PM5/19/17
to Jenkins Users, thiago...@serpro.gov.br
step([
$class: 'XUnitBuilder', testTimeMargin: '3000', thresholdMode: 1,
thresholds: [
[$class: 'FailedThreshold', failureNewThreshold: '', failureThreshold: '0', unstableNewThreshold: '', unstableThreshold: ''],
[$class: 'SkippedThreshold', failureNewThreshold: '', failureThreshold: '', unstableNewThreshold: '', unstableThreshold: '']
],
tools: [[
$class: 'MSTestJunitHudsonTestType',
deleteOutputFiles: true,
failIfNotNew: true,
pattern: 'YOUR\\LOCATIONFOR\\TestResults\\xunit_results.xml',
skipNoTestFiles: false,
stopProcessingIfError: true
]]
])

I use the above for my XUnit to MSTest and then get the display on Jenkins... might help you out since you can use MSTest results directly. 

Any hint ...
Reply all
Reply to author
Forward
0 new messages