安卓中的单元测试通常分为两种,一种是直接运行在JVM上的,一种是运行在仪器上的。
通常使用前者加上一个安卓仿真测试框架如Robolectric进行单元测试. 这样效率相对于在仪器上的单元测试更为高效.
第一步添加依赖
defaultConfig {
testImplementation 'junit:junit:4.12'
testImplementation "org.robolectric:robolectric:3.8"
}
第二步编写测试代码
image.png
测试代码请放在这个目录下
下面是一个测试代码示范
public class ExampleUnitTest {
@Test
public void addition_isCorrect() {
assertEquals(4, 2 + 2);
}
}
第三步运行该测试用例
image.png
输出
image.png
第四步,如果需要调用安卓相关的API
Robolectric提供了一个叫shadow系列对象来替换安卓的API.
例如你可以通过shadow frame work中的RuntimeEnvironment的application作为Application的Context来使用.
image.png
网友评论