Mock学习
2015-09-01 19:24
363 查看
对于一个比较大型的项目,一个功能点的测试可能需要很多外部依赖。如果真的去创建外部依赖,开销很大而且很不灵活。
Mock框架就是为了解决这个问题而诞生的。
参考
参考
参考
Mock框架就是为了解决这个问题而诞生的。
参考
参考
参考
///maven 依赖 <dependencies> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-all</artifactId> <version>1.8.5</version> <scope>test</scope> </dependency> </dependencies>
public class Test{ // 模拟获取第一个元素时,返回字符串first when(mockedList.get( 0 )).thenReturn( "first" ); // 此时打印输出first System.out.println(mockedList.get( 0 )); // 模拟获取第二个元素时,抛出RuntimeException when(mockedList.get( 1 )).thenThrow( new RuntimeException()); // 此时将会抛出RuntimeException System.out.println(mockedList.get( 1 )); doThrow( new RuntimeException()).when(mockedList).clear(); // anyInt()匹配任何int参数,这意味着参数为任意值,其返回值均是element when(mockedList.get(anyInt())).thenReturn( "element" ); // 此时打印是element System.out.println(mockedList.get( 999 )); // 调用add一次 验证方法调用次数 mockedList.add("once"); // 下面两个写法验证效果一样,均验证add方法是否被调用了一次 verify(mockedList).add("once"); verify(mockedList, times(1)).add("once"); }
相关文章推荐
- 简易HTTP协议解析
- 数组总结
- expect用法
- SimpleFork php多进程并发框架
- 使用servlet实现登录
- .net 取当前代码的行号及类名称
- Spring Data Redis
- linux常用命令(17):whereis命令
- 第二篇 使用javascript控制字体
- python unittest源码解析一----测试用例是如何被执行的
- HDU 1113
- java学习笔记之——多线程(三)
- 利用js和Ajax实现的表单的检查和提交
- C语言基础知识之(十七):内存的分区:栈区,堆区,静态区(全局区),常量区,代码区
- FFMPEG SDK 开发介绍
- UVa 11572 - Unique Snowflakes (滑动窗口STL_map||set) 好题!!!
- 9-1课堂笔记
- 8-31课堂笔记
- tomcat环境变量配置
- cxf根据wsdl生成webserivice服务端