powermock单元测试小结
最近时不时的需要单元测试来写覆盖率。简单总结一下日常心得:
1.首先指明需要测试的类:@PrepareForTest({ RewardGoldServiceImpl.class })
2.其次在测试类中new出被测试对象:@InjectMocks
RewardGoldServiceImpl rewardGoldService = new RewardGoldServiceImpl();
3.然后在遇到所需测试类中的dao方法时候,进行mock:@Mock
IDictionaryDao dictionaryDao;
进行预加载类:@Before
public void init() {
MockitoAnnotations.initMocks(this);
}
4.最后编写测试类进行测试,主体代码如下:
@PrepareForTest({ RewardGoldServiceImpl.class })
public class RewardGoldServiceImplTest {
// 被测对象
@InjectMocks
RewardGoldServiceImpl rewardGoldService = new RewardGoldServiceImpl();
/**
* 字典表操作
*/
@Mock
IDictionaryDao dictionaryDao;
@Mock
IRewardGoldDao rewardGoldDao;
@Before
public void init() {
MockitoAnnotations.initMocks(this);
}
@Test
public void testGetSystemMoney(){
String accountPeriod = "201812";
String payMerchantCode = "7236402";
List<DictionaryPo> dictionaryList = new ArrayList<DictionaryPo>();
DictionaryPo dictionaryPo = new DictionaryPo();
PowerMockito.when(dictionaryDao.getDictionaryByFieldName("freightBonusProductCode")).thenReturn(dictionaryList);
dictionaryPo.setFieldID(1);
dictionaryPo.setFieldName("111");
dictionaryPo.setFieldValue("123");
dictionaryList.add(dictionaryPo);
rewardGoldService.getSystemMoney(accountPeriod, payMerchantCode);
}
}
powermock单元测试小结的更多相关文章
- PowerMock单元测试踩坑与总结
1.Mock是什么? 通过提供定制的类加载器以及一些字节码篡改技巧的应用,PowerMock 现了对静态方法.构造方法.私有方法以及 Final 方法的模拟支持,对静态初始化过程的移除等强大的功能. ...
- PowerMock单元测试
在Java程序的单元测试中常用的mock工具有Mockito和EasyMock.但是这两种mock工具都无法实现对静态.final.私有方法或类的mock.因此有了功能强大的PowerMock工具.P ...
- Nodejs单元测试小结
前言 最近在写一课程的Project,用Node写了一个实时聊天小应用,其中就用到了单元测试.在写Node单元测试的时候,一方面感受到了单元测试的重要性,另一方面感受到了Node单元测试的不够成熟,尚 ...
- 【转】Java JUnit 单元测试小结
原文链接:https://segmentfault.com/a/1190000006731125 测试类型 单元测试(Unit test) 单元测试关注单一的类. 它们存在的目的是检查这个类中的代码是 ...
- django 单元测试小结
测试的场景 框架Django1.8 测试工具 unittest, 要记得给test设置一个独特的settings. 测试请求 也就是测试整个view部分 官方案例 其中可能会遇到登录,或者时sessi ...
- nodejs--Nodejs单元测试小结
前言 最近在写一课程的Project,用Node写了一个实时聊天小应用,其中就用到了单元测试.在写Node单元测试的时候,一方面感受到了单元测试的重要性,另一方面感受到了Node单元测试的不够成熟,尚 ...
- java单元测试小结
1. mock 构造函数 import static org.junit.Assert.*; import java.util.ArrayList; import org.junit.Test; im ...
- 单元测试及框架简介 --junit、jmock、mockito、powermock的简单使用
转 单元测试及框架简介 --junit.jmock.mockito.powermock的简单使用 2013年08月28日 14:33:06 luvinahlc 阅读数:6413 标签: 测试工具单元测 ...
- django单元测试
django 单元测试小结 django 测试 从前很少写单元测试了,特别是web应用.最近不知不觉喜欢起来这个事情了,发现单元测试对于软件的模块,正交性有很大促进作用,因为函数,模块写的不合 ...
随机推荐
- codeforces131D
Subway CodeForces - 131D A subway scheme, classic for all Berland cities is represented by a set of ...
- 关于空想X
只是一个ID而已,我才不会告诉你这是一艘法国驱逐舰 想去打CTF,但是什么也不会. 博主人很懒,估计也不会更几篇博客,嘿嘿嘿. 最近在学PYTHON,欢迎交流.
- [数据库] windows server 2003下mysql出现10048错误的解决办法 Can't connect to MySQL server on '127.0.0.1' (10048)(抄)
网站访问量大了的时候mysql连接数自然就多了,当超出mysql最大连接数的时候就会出现错误,当出现too many字样的错误的时候一般是因为连接数的问题,只需要修改最大连接数max_conectio ...
- HDU1166-ZKW树
单点修改,区间求和 // // Created by helica on 2018/3/18. // //zkw #include <cstdio> #include <cstrin ...
- C# 将前端传来的图片文件分别以大图和缩略图保存
HttpPostedFile pic_upload = Request.Files["file"]; Bitmap bitmap = (Bitmap)System.Drawing. ...
- ReactNative开发笔记(持续更新...)
本文均为RN开发过程中遇到的问题.坑点的分析及解决方案,各问题点之间无关联,希望能帮助读者少走弯路,持续更新中... (2019年3月29日更新) 原文链接:http://www.kovli.com/ ...
- 2017-12-19python全栈9期第四天第三节之iterable可迭代对象join之字符串和列表转换成字符串和range
#!/user/bin/python# -*- coding:utf-8 -*-s = 'zd's1 = '_'.join(s)print(s1)li = ['zs','ls','ww','zl',' ...
- C#调用DLL文件提示试图加载格式不正确的程序
最近在调用第三方的DLL遇到了一个问题:试图加载格式不正确的程序,找了好久发现都没有解决问题,一直报错,后来发现是程序编译时的配置错了,要将项目->属性->平台选中release-X86 ...
- Java发布webservice应用并发送SOAP请求调用
webservice框架有很多,比如axis.axis2.cxf.xFire等等,做服务端和做客户端都可行,个人感觉使用这些框架的好处是减少了对于接口信息的解析,最主要的是减少了对于传递于网络中XML ...
- Jenkins实践之入门体验
官网:https://jenkins.io/ 持续集成,快速发布是DevOps实践的最好方式. 目录 准备工作 下载/安装/启动 基础配置 插件配置 构建第一个Java项目 部署项目 准备工作 在使用 ...