Compare commits
10 Commits
d10fbbd396
...
39a361ec41
| Author | SHA1 | Date | |
|---|---|---|---|
| 39a361ec41 | |||
| 9ec20b53e3 | |||
| a86ddef535 | |||
| b3e3a68736 | |||
| f26cfa6950 | |||
| 4b57b3d45a | |||
| 983b67833b | |||
| aae261ffa3 | |||
|
|
9c34ce094f | ||
|
|
8d620984e3 |
14
Jenkinsfile
vendored
14
Jenkinsfile
vendored
@ -2,12 +2,18 @@ pipeline {
|
||||
agent any
|
||||
|
||||
stages {
|
||||
stage('Test') {
|
||||
stage('build') {
|
||||
steps {
|
||||
withChecks(name: 'Test', includeStage: true) {
|
||||
echo 'Testing..'
|
||||
sh './gradlew clean test'
|
||||
withChecks(name: 'test-coverage', includeStage: true) {
|
||||
sh './gradlew clean test jacocoTestReport jacocoTestCoverageVerification'
|
||||
junit '**/build/test-results/test/TEST-*.xml'
|
||||
recordCoverage(tools: [[parser: 'JACOCO']],
|
||||
id: 'jacoco', name: 'JaCoCo Coverage',
|
||||
sourceCodeRetention: 'EVERY_BUILD'
|
||||
// , qualityGates: [
|
||||
// [threshold: 40.0, metric: 'LINE', baseline: 'PROJECT', unstable: true],
|
||||
// [threshold: 40.0, metric: 'BRANCH', baseline: 'PROJECT', unstable: true]]
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -9,6 +9,7 @@
|
||||
plugins {
|
||||
// Apply the application plugin to add support for building a CLI application in Java.
|
||||
application
|
||||
jacoco
|
||||
}
|
||||
|
||||
repositories {
|
||||
@ -22,6 +23,7 @@ dependencies {
|
||||
|
||||
// This dependency is used by the application.
|
||||
implementation("com.google.guava:guava:31.1-jre")
|
||||
implementation("org.jacoco:org.jacoco.core:0.8.12")
|
||||
}
|
||||
|
||||
// Apply a specific Java toolchain to ease working on different environments.
|
||||
@ -31,6 +33,41 @@ java {
|
||||
}
|
||||
}
|
||||
|
||||
jacoco {
|
||||
toolVersion = "0.8.12"
|
||||
}
|
||||
|
||||
tasks.jacocoTestReport {
|
||||
reports {
|
||||
xml.required.set(true)
|
||||
xml.outputLocation.set(file("build/reports/jacoco/test/jacoco.xml"))
|
||||
csv.required.set(false)
|
||||
html.required.set(true)
|
||||
}
|
||||
}
|
||||
|
||||
tasks.jacocoTestCoverageVerification {
|
||||
violationRules {
|
||||
rule {
|
||||
limit {
|
||||
minimum = "0.4".toBigDecimal()
|
||||
}
|
||||
}
|
||||
|
||||
rule {
|
||||
isEnabled = true
|
||||
element = "CLASS"
|
||||
includes = listOf("jenkins.test.*")
|
||||
|
||||
limit {
|
||||
counter = "LINE"
|
||||
value = "TOTALCOUNT"
|
||||
minimum = "0.3".toBigDecimal()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
application {
|
||||
// Define the main class for the application.
|
||||
mainClass.set("jenkins.test.App")
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user