1. mockito是干什么的?
Mock框架之一,其余的还有EasyMock,PowerMock等。
Mock说白了就是打桩(Stub)或则模拟,当你调用一个不好在测试中创建的对象时,
Mock框架为你模拟一个和真实对象类似的替身来完成相应的行为
就是利用他,我们可以创建一个傀儡,然后被mock的类要返回的数据我们都可以指定!
就像下面这样 :
User user = mock(User.class);
when(user.getName(3)).thenReturn("张三");
Log.e(TAG, "name=" + user.getName(3));
assertEquals("张三", user.getName(3));
我们mock了User这个类,要求他当被请求返回名字getName()
的时候,就返回张三
很好懂吧?下面说点实际的运用
2. 异步回调测试
我们做异步加载之类的,如发送网络请求等,很多时候都需要回调,在回调接口中返回特定的数据!
如果服务器还没开发好,我们就很被动,无法测试接口,进行下一步的工作!
当然,什么模拟超时,服务器崩溃没响应的情况,返回特定的临界数据等特殊