gradle 命令行单元测试执行问题

文章目录

  • 问题:命令行 执行失败
  • 最终解决方案
    • (1)ADB命令
    • (2)Java 环境配置

问题:命令行 执行失败


命令行 执行测试命令 无法使用(之前还能用的。没有任何改动,又不能用了)

./gradlew app:connectedAndroidTest -Pandroid.testInstrumentationRunnerArguments.class=com.didi.testcase.basemap.A

出现下面报错,,搜索异常解决信息提示java版本过低?但是Java版本一换项目就跑不起来了。。

gradle 命令行单元测试执行问题_第1张图片

错误提示信息:

  • What went wrong:
    Execution failed for task ‘:app:processDebugMainManifest’.

Unable to make field private final java.lang.String java.io.File.path accessible: module java.base does not “opens java.io” to unnamed module @4e90a668

AndroidTest 其他命令情况

./gradlew test

./gradlew connectedAndroidTest

全部 build 失败,报相同的异常信息

gradle 命令行单元测试执行问题_第2张图片

./gradlew connectTest —test “测试类全限定名"

后面加参数,不能识别 --tests 参数

gradle 命令行单元测试执行问题_第3张图片


最终解决方案


(1)ADB命令


环境配置等原因,导致各种命令都失败,可以使用 adb 的方式进行执行测试命令,比gradle更加简单,而且不用管那么多环境问题。

缺点就是无法生成测试报告,无法完成后续的覆盖率统计等工作

adb命令行执行方式可以看整理的文档:adb 命令行执行 测试任务


(2)Java 环境配置


把本地的Java环境变量修改成 jdk11(项目的jdk版本),然后执行下面命令即可运行。

./gradlew app:connectedAndroidTest
-Pandroid.testInstrumentationRunnerArguments.class=类全限定名#方法

你可能感兴趣的:(单元测试)