Java Mocking入门—使用Mockito
2016-12-27 22:56
826 查看
我们都会编写单元测试程序,但我们当前所面临的挑战是被测单元可能依赖于其他组件。而对于单元测试配置其他组件,绝对是过枉矫正。相反,我们可以使用Mocks框架代替其他组件,继续进行单元测试。
为了展现如何使用mock框架,我编写一个数据访问层(DAL),该类对应用提供了一套API 接口来访问和修改数据库中的数据。之后在不需要连接数据库的情况下,对DAL类进行单元测试。数据库可以是本地数据库、远程数据库、文件系统或者任何可以储存和检索数据的地方。使用DAL类帮助我们 将数据映射操作从应用代码中分离出来。
使用maven建立一个Java工程。
以上操作建立了一个MockitoDemo文件夹,然后创建源文件和测试文件的整个目录结构。
考虑下面这个示例模型类:
操作Book模型类的DAL类:
当前DAL层以上没有任何功能,我们将对这段代码TDD进行单元测试。DAL层可能与ORM映射API或者数据库API通讯,而我们不关心的这些API是如何设计的。
对单元测试和Java Mock有很多框架,对这个例子,我将选择JUnit做单元测试,Mockito作为Java
mock。我们会在Maven的pom.xml文件中更新依赖属性。
现在进行BookDAL类的单元测试。单元测试中,我们将注入mock数据到BookDAL类,因此我们可以不依赖数据源就可以完成API的测试。
最初我们有一个空的测试类:
我们将使用下面的setUp()函数把BookDAL类注入mock对象,并设置mock对象数据:
在上面的
1. 创建一个BookDAL的mock对象
2. 存根带mock数据的BookDAL对象的API,这样无论何时调用API都可以返回mock数据。
填充剩余的测试方法:
使用maven命令: mvn test进行测试。输出如下:
至此,通过使用mock框架,在不用实际配置数据源的情况下,就可以测试DAL类。
原文链接: dzone 翻译: ImportNew.com - liken
译文链接: http://www.importnew.com/10083.html
为了展现如何使用mock框架,我编写一个数据访问层(DAL),该类对应用提供了一套API 接口来访问和修改数据库中的数据。之后在不需要连接数据库的情况下,对DAL类进行单元测试。数据库可以是本地数据库、远程数据库、文件系统或者任何可以储存和检索数据的地方。使用DAL类帮助我们 将数据映射操作从应用代码中分离出来。
使用maven建立一个Java工程。
考虑下面这个示例模型类:
测试驱动DAL层
对单元测试和Java Mock有很多框架,对这个例子,我将选择JUnit做单元测试,Mockito作为Javamock。我们会在Maven的pom.xml文件中更新依赖属性。
最初我们有一个空的测试类:
setUp()方法中,我做了:
1. 创建一个BookDAL的mock对象
原文链接: dzone 翻译: ImportNew.com - liken
译文链接: http://www.importnew.com/10083.html
相关文章推荐
- Android之使用Http协议实现文件上传功能
- mysql集群之MMM简单搭建
- 通晓网络测试常用命令
- PostgreSQL新手入门教程
- 细看网络仿真工具
- C#实现属于自己的QQ截图工具
- 详解SQL Server 2008工具SQL Server Profiler
- C#实现的SN快速输入工具实例
- Vue.js快速入门实例教程
- vue.js初学入门教程(1)
- 总结安卓(Android)中常用的跳转工具
- DOS下的必备工具
- 基于C++自动化编译工具的使用详解
- Node.js测试中的Mock文件系统详解
- Nodejs学习笔记之测试驱动
- 如何使用Strace调试工具
- Ajax PHP简单入门教程代码
- 五个PHP程序员工具
- MySQL入门教程(七)之视图