The effect has not been measured yet, and we will evaluate it as we use it.
Use Code Climate to automatically check code quality and test coverage coverage.
Code Climate
Quality
https://codeclimate.com/quality/
CI. Measure code quality in units of repositories and files. You can also measure test coverage if you set it up. The code quality check seems to be powerful, and it seems to evaluate in detail such as code duplication. This time there is too little code in the repository (just Hello World.) And it hasn't been evaluated yet, so I'm still not sure how effective it is. Detailed article
Velocity
https://codeclimate.com/velocity/
Ability to measure team productivity. Still BETA version.
URL
https://codeclimate.com
It also supports Webhooks, and you can set a forced check before merging.
$ 20 a month. Public repositories are free.
Very easy. Login linkage (OAuth) of the supported service and select the target repository from the list.
Code Climate Quality
MAINTAINABILITY
Measure code quality. Even if nothing is set, the analysis is done without permission when the repositories are linked.
TEST COVERAGE
Measure test coverage. It doesn't work when the repositories are linked, but it works when set.
Open Repo Setting
Open GitHub
Open Pull request status
The authentication screen will appear. Select the target repository and add it.
In the GitHub repository, set Code Climate to require in the Setting Branch settings.
Added coverage file transmission process to CI tool configuration file --Specifications and usage are described at https://docs.codeclimate.com/docs/configuring-test-coverage
Wercker was not in the sample, so the method is described below, and coverage measurement uses Jacoco.
Add CC_TEST_REPORTER_ID = Token issued by Code Climate to Wercker environment variables
Add the following to the step before build
```
# cc-test-reporter use env CC_TEST_REPORTER_ID
- script:
name: post coverage to code climate before
code: |
curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
chmod +x ./cc-test-reporter
./cc-test-reporter before-build
```
Add the following to the step after build
```
- script:
name: post coverage to code climate after
code: |
export JACOCO_SOURCE_PATH="src/main/java"
./cc-test-reporter format-coverage build/reports/jacoco/test/jacocoTestReport.xml --input-type jacoco
./cc-test-reporter upload-coverage
```
# This references an OpenJDK container from the
# Docker Hub https://hub.docker.com/_/openjdk/
# Read more about containers on our dev center
# http://devcenter.wercker.com/docs/containers/index.html
box: openjdk:10.0.1-jdk
# defining the dev pipeline
dev:
steps:
# A step that executes `gradle bootRun` command
- script:
name: run gradle
code: |
./gradlew bootRun
# Build definition
build:
# The steps that will be executed on build
steps:
# A step that executes `gradle build` command
# cc-test-reporter use env CC_TEST_REPORTER_ID
- script:
name: post coverage to code climate before
code: |
curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
chmod +x ./cc-test-reporter
./cc-test-reporter before-build
- script:
name: run gradle
code: |
./gradlew --full-stacktrace -q --project-cache-dir=$WERCKER_CACHE_DIR build
- script:
name: post coverage to codecov
code: |
bash <(curl -s https://codecov.io/bash) -t $CODECOV_TOKEN
- script:
name: post coverage to code climate after
code: |
export JACOCO_SOURCE_PATH="src/main/java"
./cc-test-reporter format-coverage build/reports/jacoco/test/jacocoTestReport.xml --input-type jacoco
./cc-test-reporter upload-coverage
You can get code quality and test coverage badge display links from Repo Setting. Describe it in README.md and display it at the top of the repository.