Android Studio运行覆盖率测试时提示项目过期的问题求助
解决Kotlin项目覆盖率测试弹窗警告的方案
检查覆盖率插件与版本兼容性
若使用Jacoco这类覆盖率工具,务必确认插件版本和Kotlin、Gradle版本适配。比如Gradle 7.x+建议搭配Jacoco 0.8.7及以上版本,避免版本不匹配引发编译异常和弹窗。在build.gradle.kts(或.gradle)中锁定Jacoco版本:jacoco { toolVersion = "0.8.10" }清理缓存后重新构建
执行Gradle清理命令彻底清除旧编译、覆盖率缓存,避免残留文件冲突:./gradlew clean build --no-build-cache完成后重新运行覆盖率测试,观察弹窗是否消失。
调整覆盖率任务执行配置
覆盖率任务和普通测试任务的执行顺序冲突也可能触发该问题。可在构建脚本中明确任务依赖,确保覆盖率任务在测试任务完成后执行:tasks.withType<JacocoReport> { dependsOn(tasks.test) reports { xml.required.set(true) html.required.set(true) } }调整IDE覆盖率运行设置(针对IntelliJ/Android Studio)
IDE内置的覆盖率工具可能和Gradle插件冲突,可尝试:- 打开
Settings > Build, Execution, Deployment > Coverage - 取消勾选
Enable coverage instrumentation,或选择Use Gradle作为覆盖率运行器
- 打开
排查特殊语法导致的 instrumentation 异常
Kotlin的inline函数、委托属性等高级语法,可能导致覆盖率工具的插桩过程出错。排查近期新增的这类代码,暂时注释后测试,确认是否为代码本身引发的弹窗。
内容的提问来源于stack exchange,提问作者mmm808
相关产品推荐
相关产品推荐

