diff --git a/README.md b/README.md index 9df4303..25993ad 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,5 @@ # JacocoTestHelper Jacoco手工测试代码覆盖率的辅助工具 + +#Usage + diff --git a/app/build.gradle b/app/build.gradle index 6444e29..a8fca8e 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,5 +1,4 @@ apply plugin: 'com.android.application' -apply plugin: 'jacoco' apply from: 'jacoco.gradle' android { diff --git a/app/jacoco.gradle b/app/jacoco.gradle index 021fe71..58428f6 100644 --- a/app/jacoco.gradle +++ b/app/jacoco.gradle @@ -1,3 +1,16 @@ +apply plugin: 'jacoco' +/** + * 手动测试代码覆盖率 + * Useage: + * + * 1、可以直接编译运行或者安装应用 + * 2、./gradlew jacocoInit 初始化 + * 3、开始测试,测试结束后点击生成报告将ec文件pull到本地项目 PROJECT_PATH 路径中,具体命令可查看日志Loge + * PROJECT_PATH '项目路径/app/build/' + 'outputs/code-coverage/' + * 4、./gradlew jacocoTestReport 然后到 /app/build/reports里查看相关报告 + * + */ + //Java源码路径 def coverageSourceDirs = [ '../app/src/main/java' @@ -8,17 +21,9 @@ jacoco { toolVersion = "0.7.9" } +//以下配置均已配置好,原则上不需要有任何修改即可正常使用 -/** - * 手动测试代码覆盖率 - * Useage: - * - * 1、可以直接编译运行或者安装应用 - * 2、./gradlew jacocoInit 初始化 - * 3、开始测试,测试结束后点击生成报告将ec文件pull到本地项目 PROJECT_PATH 路径中,具体命令可查看日志Loge - * PROJECT_PATH '项目路径/app/build/' + 'outputs/code-coverage/' - * 4、./gradlew jacocoTestReport 然后到 /app/build/reports里查看相关报告 - */ +//生成报告task task jacocoTestReport(type: JacocoReport) { group = "JacocoReport" description = "Generate Jacoco coverage reports after running tests." diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 57d95e4..0a1a34f 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,11 +1,10 @@ + - - - - + + - diff --git a/build.gradle b/build.gradle index b78a0b8..1c3e860 100644 --- a/build.gradle +++ b/build.gradle @@ -15,6 +15,7 @@ buildscript { allprojects { repositories { jcenter() + maven { url 'https://jitpack.io' } } } diff --git a/library/src/main/java/jaygoo/jacocohelper/JacocoHelper.java b/library/src/main/java/jaygoo/jacocohelper/JacocoHelper.java index afb3ffc..29aada3 100755 --- a/library/src/main/java/jaygoo/jacocohelper/JacocoHelper.java +++ b/library/src/main/java/jaygoo/jacocohelper/JacocoHelper.java @@ -7,10 +7,15 @@ import java.io.IOException; import java.io.OutputStream; + /** - * jacoco收集覆盖率统计工具 + * ================================================ + * 作 者:JayGoo + * 版 本: + * 创建日期:2017/6/16 + * 描 述: jacoco收集覆盖率统计辅助类 + * ================================================ */ - public class JacocoHelper { //ec文件的路径 @@ -22,11 +27,11 @@ public class JacocoHelper { /** * 初始化 - * @param projectPath '项目路径/app/build/' + 'outputs/code-coverage/' + * @param projectPath '项目路径' + '/app/build/outputs/code-coverage/' * @param isDebug 是否打开log */ public static void init(String projectPath, boolean isDebug){ - PROJECT_PATH = projectPath; + PROJECT_PATH = projectPath + "/app/build/outputs/code-coverage/"; LogUtils.setDebug(isDebug); } @@ -36,6 +41,7 @@ public static void init(String projectPath, boolean isDebug){ * @param isNew 是否重新创建ec文件 */ public static void generateEcFile(boolean isNew) { + if (!LogUtils.isDebug())return; OutputStream out = null; File mCoverageFilePath = new File(DEFAULT_COVERAGE_FILE_PATH); try { @@ -64,6 +70,7 @@ public static void generateEcFile(boolean isNew) { e.printStackTrace(); } } + LogUtils.d(getAdbPullCmd()); } diff --git a/library/src/main/java/jaygoo/jacocohelper/LogUtils.java b/library/src/main/java/jaygoo/jacocohelper/LogUtils.java index 6aa2274..c4144bf 100644 --- a/library/src/main/java/jaygoo/jacocohelper/LogUtils.java +++ b/library/src/main/java/jaygoo/jacocohelper/LogUtils.java @@ -1,6 +1,8 @@ package jaygoo.jacocohelper; +import android.content.Context; import android.util.Log; +import android.widget.Toast; /** * ================================================ @@ -19,9 +21,14 @@ public static void setDebug(boolean debug){ isDebug = debug; } + public static boolean isDebug(){ + return isDebug; + } + public static void d(String msg){ if (isDebug){ Log.d(TAG,msg); } } + }