EasyMock测试service
来源:互联网 发布:sql转换成日期格式函数 编辑:程序博客网 时间:2024/06/01 09:06
实例:
/**Extension选择器*/ @Autowired private ExtensionSelector extensionSelector; /**明细Dao*/ @Autowired private DetailDao detailDao; @Override public Map<String, Object> qryDetails( QueryDetailVo qryDetail) { logger.info("----------查询记录明细Serivce开始----------"); String id = qryDetail.getId(); String no = qryDetail.getNo(); String natural_key = qryDetail.getNatural_key(); Map<String, Object> resultMap = new HashMap<String, Object>(); //获取策略是否从本地获取记录明细 IDetailStrategy detailStrategy = extensionSelector .getExtensionStrategy(id,StrategyName.DetailStrategy); Map<String, Object> info = new HashMap<String, Object>(); Detail detail = new Detail(); detail.setNo(no); detail.setDetail_status("2"); List<Detail> detailList = detailDao.getDetailListByNo(detail); if(null != detailList && detailList.size() > 0){ info.put("create_time", detailList.get(0).getCreate_time()); info.put("id", id); info.put("no", no); } Map<String, Object> detailStrategyMap = detailStrategy.detailRule(info); if(null != detailStrategyMap.get("isDetailFromLocal") && (boolean)detailStrategyMap.get("isDetailFromLocal")){ List<DetailVo> localDetailList = detailDao.getDetails(id, natural_key); resultMap.put(Constants.ROWS, localDetailList); } logger.info("----------查询记录明细Serivce结束----------"); return resultMap; }
测试;
@Test public void qryDetailsTest(){ IDetailService detailService = new DetailServiceImpl(); //输入参数 QueryDetailVo queryFee = new QueryDetailVo(); String id = "123"; String no = "85025fd80bcd2a"; String natural_key = "912639"; queryFee.setNatural_key(natural_key); queryFee.setId(id); queryFee.setNo(no); Map<String, Object> map = new HashMap<String, Object>(); map.put("isDetailFromLocal", Boolean.TRUE); List<Detail> detailList = new ArrayList<Detail>(); Detail detail = new Detail(); detail.setNatural_key(natural_key); detail.setNo(no); detail.setCreate_time(new Date()); detail.setDetail_status("2"); detailList.add(detail); List<DetailVo> detaiVoList = new ArrayList<DetailVo>(); DetailVo detaiVo = new DetailVo(); detaiVo.setCreate_date(new Date()); detaiVo.setItem_name("测试项目"); detaiVo.setPrice("1800"); detaiVo.setNumber("10"); detaiVo.setTotle_amt("18000"); detaiVoList.add(detaiVo); DetailDao detailDao = autowiredMockObject(outpatientFeeService, DetailDao.class); IMocksControl mockExtensionSelector = EasyMock.createStrictControl(); ExtensionSelector extensionSelector = mockExtensionSelector.createMock(ExtensionSelector.class); IMocksControl mock = EasyMock.createStrictControl(); IDetailStrategy detailStrategy = mock.createMock(IDetailStrategy.class); //录制 EasyMock.expect(extensionSelector.getExtensionStrategy(id.intern(),StrategyName.DetailStrategy)).andReturn(paymentStrategy); ReflectionTestUtils.setField(detailService, "extensionSelector", extensionSelector, ExtensionSelector.class); EasyMock.expect(detailStrategy.detailRule(EasyMock.anyObject(Map.class))).andReturn(map); EasyMock.expect(detailDao.getDetailListByNo(EasyMock.anyObject(Detail.class))).andReturn(detailList); EasyMock.expect(detailDao.getFeeDetails(id, natural_key)).andReturn(detaiVoList); //回放 EasyMock.replay(extensionSelector); EasyMock.replay(detailStrategy); EasyMock.replay(detailDao); Map<String, Object> returnMap = detailService.qryDetails(queryFee); System.out.println(returnMap); }
阅读全文
0 0
- EasyMock测试service
- EasyMock测试
- EasyMock测试
- 基于EasyMock实现对Service组件的测试
- 用easymock测试jdbc
- 测试驱动开发-EasyMock
- easyMock测试action
- Junit 测试 servlet--easymock
- easymock,cactus测试controller
- Spring+EasyMock对Service层方法进行测试,处理@Resource属性
- 利用 easymock 测试 jdbc 分析
- 利用 easymock 测试 jdbc 分析
- EasyMock
- easyMock
- easymock
- EasyMock
- EasyMock
- EasyMock与Junit的集成测试
- svn的安装与使用
- [UE4]解决UE4打包错误 “is being used by another process”
- iOS本地音频播放、截取的实现,播放时带有动画效果
- Unity 内存管理之 ObjectPool
- <%@ page language="java" contentType="text/html; charset=utf-8"pageEncoding="utf-8"%>这几个编码分别代表什么意思?
- EasyMock测试service
- Dapper Helper
- linux 常用命令及操作
- poj 3094(水题)
- UML(用例图、状态图)
- Java中集合总结
- Unity 热更新之AssetBundle
- 【Dubbo】Dubbo官方手册
- 用js写选项卡效果,实现原理;