Android Studio下执行单元测试
在 Android Studio下 学习 怎么执行 单元测试 ,现总结如下: 1. https://coderwall.com/p/ybds4w http://blog.futurice.com/android_unit_testing_in_ides_and_ci_environments 2. 出现问题如下: Exception in thread "main" java .lang.NoClassDefFoundError: junit/textui/ResultPrinter at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:169) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:113) Caused by: java.lang.ClassNotFoundException: junit.textui.ResultPrinter at java.net.URLClassLoader$1.run(URLClassLoader.java:200) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:276) at java.lang.ClassLoader.loadClass(ClassLoader.java:251) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) ... 3 more 原因为调用的junit android-studiopluginsjunitlibjunit-rt.jar 下没有junit/textui/ResultPrinter 这个class文件,怎么解决呢???? 3. com.google.inject的maven配置 <dependency> <groupId>com.google.inject</groupId> <artifactId>guice</artifactId> <version>1.0</version> </dependency> 4. android-4.0.1.2.jar Maven配置 <dependency> <groupId>com.google.android</groupId> <artifactId>android</artifactId> <version>4.0.1.2</version> </dependency> 5. 用gradle编译项目时出错: Could not create plugin of type 'AppPlugin' 解决方法: classpath 'com.android.tools.build:gradle:0.7.0' 改为 classpath 'com.android.tools.build:gradle:0.7.3' 6. 用gradle 同步工程出现错误如下: Unable to load class 'org.gradle.api.artifacts.result.ResolvedComponentResult' 解决方法: classpath 'com.android.tools.build:gradle:0.7.3' 7. gradle-plugin and the gradle version说明: There is a relation between gradle-plugin and the gradle version. For example com.android.tools.build:gradle:0.6.+ -> gradle 1.8 com.android.tools.build:gradle:0.7.+ -> gradle 1.9 com.android.tools.build:gradle:0.8.+ -> gradle 1.9/1.10 com.android.tools.build:gradle:0.9.+ -> gradle 1.10/1.11 You can find gradle version used in your project in the file gradle/wrapper/gradle-wrapper.properties Also there is a relation between gradle-plugin and the IDE version. For example: Android Studio 0.3.x -> gradle-plugin 0.6 Android Studio 0.4.x -> gradle-plugin 0.7 Android Studio 0.4.3+ -> gradle-plugin 0.8 Android Studio 0.5.x -> gradle-plugin 0.9 For updated news you can check this link: http://tools.android.com/recent 8. 错误问题如下: !!! JUnit version 3.8 or later expected: java.lang.RuntimeException: Stub! at junit.runner.BaseTestRunner.<init>(BaseTestRunner.java:5) at junit.textui.TestRunner.<init>(TestRunner.java:54) at junit.textui.TestRunner.<init>(TestRunner.java:48) at junit.textui.TestRunner.<init>(TestRunner.java:41) 解决方法:(https://github.com/robolectric/deckard-gradle) For Intellij, go to Project Structure -> Modules -> deckard-gradle pane. In the Dependencies tab, move the Module SDK dependency (i.e. Android API 19 Platform) to be the last item in the list. For Android Studio, dependency ordering is currently not modifiable via any GUI. Therefore, you must modify the project iml file directly as such and reload the project: <orderEntry type="library" exported="" scope="TEST" name="wagon-provider-api-1.0-beta-6" level="project" /> <orderEntry type="library" exported="" scope="TEST" name="xercesMinimal-1.9.6.2" level="project" /> <orderEntry type="jdk" jdkName="Android API 19 Platform" jdkType="Android SDK" /> <---make sure this is the last orderEntry </component> </module> 9.下载android sdk和platform API参考地址: http://xtbbbbdx.blog.51cto.com/3506227/1009209 android-3.0_r02-linux.zip的下载链接 http://dl.google.com/android/repository/android-3.0_r02-linux.zip 10: NoClassDefFoundError: com/intellij/rt/execution/junit/JUnitStarter: com/intellij/rt/execution/junit/JUnitStarter 解决方法:??? 11. No resource found that matches the given name 'Theme.AppCompat.Light.DarkActionBar'. 解决方法: using android-support-v7-appcompat.jar lib inside libs folder (compile'com.android.support:appcompat-v7:19.0.+')
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341