在开发过程中经常遇到后端api不自测,或者客户端做得快些的情况。而这时为了检查自己的页面和逻辑是否写得到位,我们经常需要mock,无论是mock逻辑还是mock视图都离不开对model或bean的mock。

大家都知道很多好用而强大的测试框架,robo,mockito或者Expresso等等。个人当然推荐这些框架,但现实往往残酷,具体原因我就不那么具体了。那么在做项目的时候我就通过反射写了一个专门用于初始化model或bean的工具类,InitializeConverter,然后再通过这个用假数据填充好的bean去测试一些逻辑。个人感觉它虽然不强大也没啥逼格,但是如果真的追求快速简便,它是个不错的选择。

它主要用于客户端完成功能逻辑与页面布局后,绕过网络请求的接口进行自测。

假如我们有一个类如下:

而接口还没有完成,这时我们就得绕过这次请求,但是要mock这个类的操作还是比较麻烦的:

如果使用InitializeConverter两句话就可以搞定了:

InitializeConverter c = new InitializeConverter(BuildConfig.BASE_PACKAGE_NAME);
TestModel model = (TestModel) c.from(TestModel.class);

拿到这个mode对象,我们就可以轻松的绕过接口进行下一步的逻辑了,是不是很方便呢。

具体的说明大家可以去这里。直接copy下来直接使用就ok了。

如果担心测试后还要删代码,其实可以这样写:

欢迎讨论。

2 收藏


直接登录