Wie erhalte ich Codeabdeckung mit Android Studio?

Lesezeit: 5 Minuten

Benutzer-Avatar
h.usune

Ich entwickle Apps mit Android Studio.
Ich konnte den Testcode ausführen.
Aber ich weiß nicht, wie ich Codeabdeckung in Android Studio bekomme.

Die folgenden Links habe ich bereits gesehen.

Android-Gradle-Code-Abdeckung
Aber ich kann das Update auf v0.6, das Emma unterstützt, kaum erwarten.

Die Projektkonfiguration ist wie folgt.

Haupt code

MyProject/AppName/src/main/java/mypackage/MyClass.java

Code testen

MyProject/AppName/src/instrumentTest/java/mypackage/test/MyClassTest.java

Projektkonfiguration

Mein Projekt
├─build.gradle
└─AppName
├─build.gradle
└─Quelle
├─hauptsächlich
│ ├─java
│ │ └─meinPaket
│ │ └─MeineKlasse.java
│ ├─res
│ └─AndroidManifest.xml
└─Instrumententest
└─java
└─mein Paket
└─testen
└─MyClassTest.java

  • Ich wünschte, sie hätten das, es war wirklich schön in Eclipse. Leichter zu sehen, was Sie verpasst haben.

    – JPM

    9. April 2015 um 20:17 Uhr

Benutzer-Avatar
Kaleb

Mit dem neuen Android Studio 1.2 können Sie Ihre Komponententests ausführen und die Abdeckung innerhalb der IDE anzeigen.

Zuerst müssen Sie Ihre Komponententests in der IDE zum Laufen bringen. (Wenn Sie bereits können, überspringen Sie diesen Schritt)

Das Führung und Demo wird dir helfen.

Zweitens müssen Sie eine JUnit Run-Konfiguration erstellen

Geben Sie hier die Bildbeschreibung ein

Innerhalb dieser Konfiguration können Sie wählen

  • Testart: “Alles im Paket”
  • Paket: [the package where your tests reside, eg: “com.myapp.tests”]
  • Suche nach Prüfungen: Über Modulabhängigkeiten hinweg (könnte für Ihr Setup unterschiedlich sein)
  • VM-Optionen: -ea
  • Arbeitsverzeichnis: [your project’s directory]
  • Klassenpfad des Mods verwenden: [select your module]

Wenn Sie Probleme beim Erstellen Ihrer JUnit-Ausführungskonfiguration haben, sollten Sie besuchen diese Anleitung zur Hilfe.

Schließlich sollten Sie im neuesten Android Studio in der Lage sein, Ihre JUnit-Run-Konfiguration auszuführen, indem Sie auf die Schaltfläche „Run with Coverage“ klicken.


In Android Studio 2.1.3 ist das Label Run Unit tests with Coverage wo Unit test ist der Name Ihrer Testkonfiguration, wie im folgenden Screenshot gezeigt:

Android Studio: Schaltfläche „Run Unit Tests with Coverage“.

  • Tolle Antwort, die Schaltfläche „Run with Coverage“ ist der Schlüssel und befindet sich standardmäßig rechts neben der Schaltfläche „Debug“.

    – Gemeiner Mann

    9. Juli 2015 um 9:00 Uhr

  • Um dies über die Befehlszeile zu tun, müssten Sie höchstwahrscheinlich ein Tool wie JaCoCo verwenden. docs.gradle.org/current/userguide/jacoco_plugin.html wäre ein guter Anfang.

    – Kaleb

    23. Oktober 2016 um 1:24 Uhr

Benutzer-Avatar
xfdai

Es gibt so viele Antworten, die zeigen, wie man sich bewirbt jacoco Plugin für das Android Studio-Projekt, das veraltet ist und mich so viel Zeit verschwendet hat, um die Lösung für kürzlich Android Studio herauszufinden (Mein Android Studio ist Version 2.1.2).

  • Jacoco Das Plug-in ist für Android Studio Gradle integriert. Sie müssen es nur wie folgt aktivieren:
  buildTypes {
    ...
    debug {
      testCoverageEnabled true
    }
  }
  • Nachdem Sie dies getan haben, führen Sie die Unit-Test-Aufgabe aus

    ./gradlew testDebugUnitTest

  • Erstellen Sie dann Coverage-Dateien:

    ./gradlew createDebugCoverageReport

  • Coverage-Dateien werden unter erstellt <module>/build/reports/coverage/debug Ordner, enthalten index.htmldie Sie mit dem Browser öffnen können, und report.xml die Sie verwenden können, um einen Bericht zu erhalten jenkins jacoco plugin oder andere fortlaufende Integrationstools.

Für die, die es bekommen haben 0% Deckung mit jenkins jacoco plugin, stellen Sie sicher, dass Sie die richtige Version verwenden. Zitat aus ihre Seite:

Leider bricht JaCoCo 0.7.5 die Kompatibilität zu früheren Binärformaten der jacoco.exec-Dateien. Das JaCoCo-Plugin bis Version 1.0.19 basiert auf JaCoCo 0.7.4, daher können Sie diese Version nicht mit Projekten verwenden, die bereits JaCoCo 0.7.5 oder neuer verwenden. Das JaCoCo-Plugin ab Version 2.0.0 verwendet JaCoCo 0.7.5 und benötigt daher auch diese Version, um in Ihren Projekten verwendet zu werden. Bitte bleiben Sie beim JaCoCo-Plugin 1.0.19 oder niedriger, wenn Sie noch JaCoCo 0.7.4 oder niedriger verwenden

  • Mit dem eingebauten Jacoco bekomme ich 0% Abdeckung. Weiß jemand, wie man das beheben kann? (mit Gradle 2.2.3)

    – 最白目

    22. Februar 2017 um 15:34 Uhr

  • Ich habe 0% auf neueren Samsung-Geräten, andere Geräte funktionieren einwandfrei.

    – Jemand

    9. März 2018 um 10:51 Uhr

  • Ich habe den Bericht im Ordner “Berichte/Jacoco” erhalten

    – W00di

    13. November 2018 um 9:49 Uhr


Aktivieren Sie testCoverage in Ihrem Modul build.gradle Datei

buildTypes {
        debug {
            testCoverageEnabled true
        }
    }

und dann

Klicken Sie mit der rechten Maustaste auf das Test -> Java-Paket und wählen Sie es aus Run Tests in Java with Coverage um alle Tests mit Codeabdeckung auszuführen, oder klicken Sie mit der rechten Maustaste auf die jeweilige Testklasse und klicken Sie darauf Run SampleTest with Coverage

Wir verwenden Maven, um unsere App zu erstellen, und Cobertura für die Berichterstattung über die Codeabdeckung

beide sind wirklich einfach zu integrieren

Android-Maven-Integration:

http://www.vogella.com/tutorials/AndroidBuildMaven/article.html

Beispiel für Maven + Cobertura-Codeabdeckung:

http://www.mkyong.com/qa/maven-cobertura-code-coverage-example/

Benutzer-Avatar
Hallo Rocker

Ich glaube nicht, dass Sie in Android Studio einen Bericht zur visuellen Codeabdeckung sehen können. Aber du könntest es versuchen Jacoco. Sie müssen es in Ihre integrieren build.gradle Datei. Die ähnliche Frage & Lösung finden Sie hier

Benutzer-Avatar
Anas Azim

Haben Sie versucht, das Jacoco-Plugin zu verwenden, um Codeabdeckung für Ihr Projekt zu erhalten? Es ist ein gutes Plugin, das Ihnen basierend auf Ihrem Paket oder einzelnen Klassen eine Abdeckung bietet. Ich bin mir nicht sicher, wie Sie Jacoco für die Verwendung mit Gradle konfigurieren, da ich Maven verwende. Überprüfen Sie den Link: und sehen, ob es Ihnen hilft

Benutzer-Avatar
anuja jain

Android Studio Gradle verfügt über ein integriertes Jacoco-Plugin, mit dem Sie die Codeabdeckung finden können. Ich habe einen Artikel geschrieben, um Jaococo Schritt für Schritt zu konfigurieren, um Codeabdeckung für den Espresso-Testfall zu finden, aber Sie können es auch für Robotium verwenden. sieh dir das an.

http://qaautomated.blogspot.in/2016/03/how-to-find-code-coverage-with-jacoco.html

1013930cookie-checkWie erhalte ich Codeabdeckung mit Android Studio?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy