Mockito使用注意事项

已使用mockito有些问题。例如:配合可变长度参数、定义自己的参数匹配,在这些mockito官方文件(http://docs.mockito.googlecode.com/hg/latest/org/mockito/Mockito.html)中并没有具体的介绍,基本上是在stackoverflow上找的资料,摸索成功了,未写总结时间久了,遗忘了。又又一次找资料,⊙﹏⊙b汗。

1、自己定义參数匹配器、数组參数匹配

本篇文章主要介绍入參为此种格式的public void saveOrders(Order ...order);方法參数matcher方式,

http://linmingren.me/blog/2012/08/mockito%E4%BD%BF%E7%94%A8/

依据文章所述採用any(Order[].class)就可以;

我遇到此种情况的入參。依旧无法通过。仅仅能把入參改为(Order[] order)方式才干够。

文章还有mock/spy的差别,怎样自己定义參数匹配器(http://rwehner.wordpress.com/2010/02/23/mockito-some-useful-programming-examples/)。

推荐指数☆☆☆☆☆

 

2、基本资料

http://www.baeldung.com/mockito-verif本篇文章主要是mockito基本使用方法,当中有ArgumentCaptor的介绍,还有二篇更具体的:

http://hi.baidu.com/hivemind/item/1549ee3d4e4c1abc124b1468

http://www.vogella.com/tutorials/Mockito/article.html

事实上最好的文档就是官方的docs

推荐指数☆☆

 

3、自己定义返回值

http://googletesting.blogspot.com/2014/03/whenhow-to-use-mockito-answer.html通过实现Answer接口来自己定义返回值,文章的评论中有使用Answer特性来指定mock对象返回值的代码:mock对象默认情况下返回相应对象的默认值。

推荐指数☆☆☆

 

4、怎样与Spring整合

方案1:使用Springockito。最简单的方案

https://bitbucket.org/kubek2k/springockito/wiki/Home

或者:http://blog.csdn.net/fireofjava/article/details/8687128、http://www.javacodegeeks.com/2013/08/injecting-test-doubles-in-spring-using-mockito-and-beanpostprocessors.html

 

 

方案2:通过Spring@Configuration&&@Bean方式定义实现spring bean的方法:

@Bean

    public ItemSkuFilterTask makeDao() {

        returnMockito.mock(ItemSkuFilterTask.class);

}

的优点是能够定义他们自己的能力mock一个方法调用Response对象

版权声明:本文博客原创文章。博客,未经同意,不得转载。

原文地址:https://www.cnblogs.com/mengfanrong/p/4626731.html