TL; DR
我有一个Java项目,我用maven构建和测试。在Android sdk上运行junit测试最简单的方法是什么?
更多详情
提交后,用户打开一个错误报告,解释我破坏了与android的兼容性,因为我引入了对javax.xml.bind
的依赖,而且这个包在Android上不存在。
现在我设法在不使用此软件包的情况下实现我的功能,并且我想确定我不再打破这种兼容性。因此,我想在Android Sdk上运行我现有的junit4测试。问题是我是一个Android菜鸟,我开始淹没在文档中:
答案 0 :(得分:0)
是。 用于Gradle的Android插件会跟踪,由于lib的API级别minSdkVersion限制,您不使用不允许使用的API。 (我很确定,它也可以用 maven-android-plugin 进行存档)
这是possible,需要Surefire Plugin。不幸的是,我没有亲自尝试过,所以我可以简单地说,从我简要阅读的内容来看 - 它看起来古老而且不是特别容易设置。所以,如果我是你,我会去Gradle。但如果它的成本太高 - 那么。它也可以和maven一起使用。
除非您想测试活动和一些复杂的端到端UI(片段,意图等)场景,否则您最好使用JUnit测试。即使你确实需要与Android的Activity / Fragment相关的东西,你也可以使用Robolectric lib(它是一个单元测试框架,允许在许多情况下避免使用仪器测试)