mirror of
https://github.com/SAP/jenkins-library.git
synced 2024-12-14 11:03:09 +02:00
d657f0dc28
* add option to fail the build on test errors * fix typo * add test cases * adjust docs * set build result * add hasTestFailure utils method * use utils method * use dedicated type * adapt tests * handle missing test actions * Update testsPublishResults.md * Update JenkinsUtils.groovy * Update JenkinsUtils.groovy * Update JenkinsUtils.groovy * remove comments * adapt test case * Update TestsPublishResultsTest.groovy
4.4 KiB
4.4 KiB
testsPublishResults
Description
This step can publish test results from various sources.
Prerequsites
- test result files - To use this step, there must be test result files available.
- installed plugins:
Pipeline configuration
none
Explanation of pipeline step
Usage of pipeline step:
testsPublishResults(
junit: [updateResults: true, archive: true],
jacoco: [archive: true]
)
Available parameters:
parameter | mandatory | default | possible values |
---|---|---|---|
script | yes | ||
failOnError |
no | false |
true , false |
junit | no | false |
true, false |
jacoco | no | false |
true, false |
cobertura | no | false |
true, false |
jmeter | no | false |
true, false |
script
- The common script environment of the Jenkinsfile running. Typically the reference to the script calling the pipeline step is provided with thethis
parameter, as inscript: this
. This allows the function to access thecommonPipelineEnvironment
for retrieving, for example, configuration parameters.failOnError
- IffailOnError
it set totrue
the step will fail the build if JUnit detected any failing tests.junit
- Publishes test results files in JUnit format with the JUnit Plugin.jacoco
- Publishes code coverage with the JaCoCo plugin .cobertura
- Publishes code coverage with the Cobertura plugin.jmeter
- Publishes performance test results with the Performance plugin.
Each of the parameters junit
, jacoco
, cobertura
and jmeter
can be set to true
or false
but also to a map of parameters to hand in different settings for the tools.
junit
parameter | mandatory | default | possible values |
---|---|---|---|
pattern | no | '**/TEST-*.xml' |
|
archive | no | false |
true, false |
updateResults | no | false |
true, false |
allowEmptyResults | no | true |
true, false |
jacoco
parameter | mandatory | default | possible values |
---|---|---|---|
pattern | no | '**/target/*.exec' |
|
include | no | '' |
'**/*.class' |
exclude | no | '' |
'**/Test*' |
archive | no | false |
true, false |
allowEmptyResults | no | true |
true, false |
cobertura
parameter | mandatory | default | possible values |
---|---|---|---|
pattern | no | '**/target/coverage/cobertura-coverage.xml' |
|
archive | no | false |
true, false |
allowEmptyResults | no | true |
true, false |
onlyStableBuilds | no | true |
true, false |
jmeter
parameter | mandatory | default | possible values |
---|---|---|---|
pattern | no | '**/*.jtl' |
|
errorFailedThreshold | no | 20 |
|
errorUnstableThreshold | no | 10 |
|
errorUnstableResponseTimeThreshold | no | `` | |
relativeFailedThresholdPositive | no | 0 |
|
relativeFailedThresholdNegative | no | 0 |
|
relativeUnstableThresholdPositive | no | 0 |
|
relativeUnstableThresholdNegative | no | 0 |
|
modeOfThreshold | no | false |
true, false |
modeThroughput | no | false |
true, false |
nthBuildNumber | no | 0 |
|
configType | no | PRT |
|
failBuildIfNoResultFile | no | false |
true, false |
compareBuildPrevious | no | true |
true, false |
archive | no | false |
true, false |
allowEmptyResults | no | true |
true, false |
Step configuration
Following parameters can also be specified as step parameters using the global configuration file:
junit
jacoco
cobertura
jmeter
Side effects
none
Exceptions
none
Example
// publish test results with coverage
testsPublishResults(
junit: [updateResults: true, archive: true],
jacoco: [archive: true]
)
// publish test results with coverage
testsPublishResults(
junit: [pattern: '**/target/TEST*.xml', archive: true],
cobertura: [pattern: '**/target/coverage/cobertura-coverage.xml']
)