[JAVA] Code Climate Code Qualität, Abdeckungsmessung

Der Effekt wurde noch nicht gemessen und wir werden ihn bewerten, sobald wir ihn verwenden.

Überblick

Verwenden Sie Code Climate, um die Codequalität automatisch zu überprüfen und die Abdeckung zu testen.

Code Climate

Quality

https://codeclimate.com/quality/

CI. Messen Sie die Codequalität auf Repository- oder Dateibasis. Sie können die Testabdeckung auch messen, wenn Sie sie festlegen. Die Überprüfung der Codequalität scheint leistungsstark zu sein und wird im Detail ausgewertet, z. B. bei der Codeduplizierung. Dieses Mal befindet sich zu wenig Code im Repository (nur Hello World). Er wurde noch nicht evaluiert, daher bin ich mir immer noch nicht sicher, wie effektiv er ist. Ausführlicher Artikel

Velocity

https://codeclimate.com/velocity/

Fähigkeit zur Messung der Teamproduktivität. Immer noch BETA-Version.

URL

https://codeclimate.com

Entsprechender Service

Es unterstützt auch Webhooks, und Sie können vor dem Zusammenführen eine erzwungene Prüfung festlegen.

Preis

20 Dollar im Monat. Öffentliche Repositories sind kostenlos.

Zusammenarbeit mit dem Git-Repository

Sehr leicht. Anmeldeverknüpfung (OAuth) des unterstützten Dienstes und wählen Sie das Ziel-Repository aus der Liste aus.

Code Climate Quality

MAINTAINABILITY

Codequalität messen. Auch wenn Sie nichts festlegen, wird die Analyse ohne Erlaubnis durchgeführt, wenn die Repositorys verknüpft sind.

TEST COVERAGE

Testabdeckung messen. Es funktioniert noch nicht, wenn die Repositorys verknüpft sind, und es funktioniert, wenn es festgelegt ist.

Aufbau

Erzwungene Überprüfung vor dem Zusammenführen von GitHub

  1. Öffnen Sie die Repo-Einstellung
  2. Öffnen Sie GitHub
  3. Öffnen Sie den Pull-Anforderungsstatus
  4. Der Authentifizierungsbildschirm wird angezeigt. Wählen Sie das Ziel-Repository aus und fügen Sie es hinzu.
  5. Stellen Sie das erforderliche Code-Klima in den Zweigstelleneinstellungen unter Einstellung im GitHub-Repository ein.
  6. Übertragungsprozess für Coverage-Dateien zur CI-Tool-Einstellungsdatei hinzugefügt
  1. Wercker war nicht in der Probe, daher wird die Methode unten beschrieben, und die Deckungsmessung verwendet Jacoco.

  2. Fügen Sie der Wercker-Umgebungsvariablen CC_TEST_REPORTER_ID = Code Climate-Token hinzu

  3. Fügen Sie dem Schritt vor dem Erstellen Folgendes hinzu

    ```
    # 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
    ```
    
  4. Fügen Sie dem Schritt nach dem Erstellen Folgendes hinzu

    ```
    - 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
    ```
    

Das ganze Bild von wercker.yml

# 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

Abzeichen

Über Repo-Einstellungen erhalten Sie Links zur Anzeige von Codequalität und Testabdeckung. Beschreiben Sie es in README.md und zeigen Sie es oben im Repository an.

Recommended Posts

Code Climate Code Qualität, Abdeckungsmessung
Bibliothek zur Messung der Java-Abdeckung
Informationen zu Arten der Codeabdeckung
Erhalten Sie JUnit-Codeabdeckung für Android.