MVP 与自动化测试

Android Mock 单元测试

2017-09-21  本文已影响0人  vvweilong

Mock 用来干什么的?
首先我们知道 单元测试需要测试对象高度内聚,而我们在开发中无法避免需要用到其他对象,这些对象可能又引用到另一些对象,这样测试起来极其困难。
Mock 可以将这些依赖的对象虚拟化,我们不必创建一个真是的对象就可以进行调用测试,实现了封闭测试。
引入方式:

image.png

举个例子来说明吧

简单 MVP 实现

我们实现一个简单的 mvp 架构 ,实现的功能是 添加数据和删除数据
主要对 presenter 来进行测试

image.png

可以看到 我们要想测试 presenter 是否正常运行,需要两个依赖,一个是 数据的实体操作 repository 和 结果返回的接收实体 view
好我们创建 测试类

image.png

我们以 add 方法为例编写测试

image.png

我们在声明部分先声明需要依赖的对象,并初始化。

image.png

对应测试用例编写测试方法
执行测试对象的相应方法,检测预期对象的方法是否调用

运行通过结果 运行失败结果

引用的依赖对象采用同样的方法进行单元测试,保证功能调用的正常

上一篇下一篇

猜你喜欢

热点阅读