CoverAlls

  • Code Coverage๋ฅผ ์ œ๊ณตํ•ด์ฃผ๋Š” Web Service
  • Travis-ci์™€ ๊ฐ™์ด ์‚ฌ์šฉํ•˜๋ฉด ์ข‹๋‹ค.

์™œ ์‚ฌ์šฉํ•˜๋Š”๊ฐ€?

  • ํ˜‘์—…ํ•˜๋Š” ๊ณผ์ •์—์„œ ๋งŽ์€ Pull Request๋ฅผ ์ž๋™์ ์œผ๋กœ ๋นŒ๋“œ, ํ…Œ์ŠคํŠธ ๋ฐ Code Coverge๋ฅผ ๋ถ„์„ํ•ด์„œ ๊ฒฐ๊ณผ๋ฌผ์„ ์ž๋™์ ์œผ๋กœ ๋Œ“๊ธ€์— ๊ฒฐ๊ณผ๋ฌผ์„ ๋‚จ๊ฒจ์ค๋‹ˆ๋‹ค.

Tutorial

ํšŒ์›๊ฐ€์ž… ๋ฐ ๋กœ๊ทธ์ธ

์›ํ•˜๋Š” Project ์—ฐ๋™ ์ถ”๊ฐ€ํ•˜๊ธฐ

์›ํ•˜๋Š” Project๊ฐ€ ์•ˆ๋ณด์ด๊ฑฐ๋‚˜ ๊ฒ€์ƒ‰์ด ์•ˆ๋˜๋Š” ๊ฒฝ์šฐ ํŽ˜์ด์ง€ ๋งจ ์•„๋ž˜์— ๋ฉ”๋‰ด์— ๊ฐ€์„œ ๊ถŒํ•œ ๋ถ€์—ฌํ•˜๊ธฐ

Repo_token ๋ถ€์—ฌ ๋ฐ .coveralls.yml ํ”„๋กœ์ ํŠธ์— ์ถ”๊ฐ€ํ•˜๊ธฐ

  • .coveralls.yml๋งŒ๋“ค๊ธฐ
  • repo_token ์ถ”๊ฐ€ํ•˜๊ธฐ

Gradle ์„ค์ •ํ•˜๊ธฐ

dependencies {
		classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
		classpath 'org.kt3k.gradle.plugin:coveralls-gradle-plugin:2.8.2'
	}
 
...
 
plugins {
	id 'net.saliman.cobertura' version '2.3.1'
	id 'com.github.kt3k.coveralls' version '2.8.2'
}
 
...
 
cobertura.coverageFormats = ['html', 'xml'] // coveralls plugin depends on xml format report

Travis - ci Script ์ถ”๊ฐ€ํ•˜๊ธฐ

after_success:
- ./gradlew cobertura coveralls

Markdown ๋ฑƒ์ง€ ์ถ”๊ฐ€ํ•˜๊ธฐ

  • Coverage Status

Reference