升级到Java 8和构建工具版本25后,Android测试用例失败
我有一堆运行正常的测试用例.但是,一旦我的项目更新为构建工具版本25并且
Java已更新为JDK 1.8,我的所有测试用例都会失败.
当我运行我的测试时,我使用./gradlew cAT,我收到错误消息: 由于’java.lang.NullPointerException’导致检测运行失败 要么 对Nexus 6 – 6.0.1的测试失败:由于’java.lang.ClassNotFoundException’导致仪表运行失败 com.android.builder.testing.ConnectedDevice>没有发现任何测试.[Nexus 6 – 6.0.1]失败 我的build.gradle有以下几行: androidTestCompile 'junit:junit:4.12' androidTestCompile 'com.android.support.test:runner:0.4' androidTestCompile 'com.android.support.test:rules:0.4' androidTestCompile 'com.android.support.test:testing-support-lib:0.1' 知道解决方案可能是什么? 更新: 当我尝试使用./gradlew -cAT -s从gradle运行相同的操作时,我看到以下异常: 引起:java.lang.NoClassDefFoundError:org / gradle / logging / ConsoleRenderer 谷歌搜索告诉我,这可能是一个特殊问题,但我的测试在同一个gradle版本中运行良好. 解决方法
事实证明,在我的基本上下文初始化期间,根本原因是一个空指针!
我的学习: >无论我们使用IDE还是gradle来运行测试用例,他们最终都会调用am instrumentation命令(https://developer.android.com/studio/test/command-line.html).>运行命令adb shell am instrument -w -r -e debug true -e class(注意我已将debug设置为true).>同时,让你的adb logcat运行.这告诉我为什么我遇到了NPE. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |