参考https://developer.android.com/training/testing/unit-testing/local-unit-tests.html和https://medium.com/@ali.muzaffar/the-basics-of-unit-and-instrumentation-testing-on-android-7f3790e77bd,我添加了
testCompile 'junit:junit:4.12'
在我的gradle中。然后我创建了一个新的测试类,但显然是
@Test
抛出'无法解析符号'。在按ALT + Enter时,Android Studio建议我“将testng添加到classpath”。
我不太明白这里发生了什么。我认为我不需要测试我在这里尝试做什么,上面的两篇文章也没有提到关于testng的任何内容。
此外,如果我按照Android Studio建议“将testng添加到classpath”,Android Studio会自动添加
androidTestCompile 'org.testng:testng:6.9.6'
在我的gradle中。当我尝试运行测试时,我会收到错误
Error:Error converting bytecode to dex:
Cause: com.android.dex.DexException: Multiple dex files define Lorg/hamcrest/Description;
答案 0 :(得分:0)
显然正在改变
testCompile 'junit:junit:4.12'
到
androidTestCompile 'junit:junit:4.12'
解决了这个问题。 Android Studio也不会让我把bug添加到classpath。
这个Confused about testCompile and androidTestCompile in Android Gradle也帮助我更多地了解了testCompile和androidTestCompile