EasyMock 常见异常
1.
java.lang.IllegalStateException: calling verify is not allowed in record state
含义:不允许在记录状态(record state)调用verify方法。
发生场景:不小心在调用EasyMock.replay(mockObj)之前,调用了EasyMock.verify(mockObj);
2.
java.lang.AssertionError:
Unexpected method call IDao.search(com.unittest.easymock.iargumentmatchertest.TestEntity@578486a3):
IDao.search(com.unittest.easymock.iargumentmatchertest.TestEntity@6ebc05a6): expected: 1, actual: 0
含义:从异常来看,search方法的参数的期待值和实际值不是同一个对象。
发生场景:在比较方法的入参的时候,一般是使用方法的equals方法来比较对象,如果equals方法没有重写而只是比较是否是同一个对象引用的话,很容易出现这种问题。
例:
public void testEntity() {
ServiceClass serviceClass = new ServiceClass();
IDao idao = EasyMock.createMock(IDao.class);
serviceClass.setIdao(idao);
TestEntity testEntity = new TestEntity();
TestEntity testEntity2 = new TestEntity();
EasyMock.expect(idao.search(testEntity)).andReturn(2);
EasyMock.replay(idao);
serviceClass.search(testEntity2);
EasyMock.verify(idao);
}
解决方法:
1.重写equals方法
2.使用EasyMock的Argument Matchers提供的或自定义的方法来比较方法入参。
EasyMock 常见异常的更多相关文章
- salesforce 零基础学习(五十四)常见异常友好消息提示
异常或者error code汇总:https://developer.salesforce.com/docs/atlas.en-us.api.meta/api/sforce_api_calls_con ...
- 【转】Hibernate 常见异常
转载地址:http://smartan.iteye.com/blog/1542137 Hibernate 常见异常net.sf.hibernate.MappingException 当出 ...
- Spring10种常见异常解决方法
在程序员生涯当中,提到最多的应该就是SSH三大框架了.作为第一大框架的Spring框架,我们经常使用. 然而在使用过程中,遇到过很多的常见异常,我在这里总结一下,大家共勉. 一.找不到配置文件的异常 ...
- Hibernate 常见异常
Hibernate 常见异常net.sf.hibernate.MappingException 当出现net.sf.hibernate.MappingException: Error r ...
- 开通博客第一天 (先发一些android(java)常见异常信息
常见异常: java.lang.AbstractMethodError抽象方法错误.当应用试图调用抽象方法时抛出. java.lang.AssertionError断言错.用来指示一个断言失败的情况. ...
- iOS常见异常Exec_Bad_Access问题解决办法
iOS常见异常Exec_Bad_Access问题解决办法 在iOS开发中,经常遇到Exec_Bad_Access异常,导致程序奔溃问题,一般这个问题都是因为过早的release对象,然后又对该 ...
- 大数据平台常见异常-zookeeper
本文主要阐述大数据平台环境zookeeper常见异常和解决方案 1.Connection reset by peer异常 异常说明 我们现在项目有个任务OneMinuteDataSync是用spark ...
- struts2.1.8+hibernate2.5.6+spring3.0(ssh2三大框架)常见异常原因和解决方案
---------------------------------------------------------------------------------------------------- ...
- spring集成Junit做单元测试及常见异常解决办法
spring-test依赖包 <!--Spring-test --> <!-- https://mvnrepository.com/artifact/org.springframew ...
随机推荐
- Avira Free Antivirus 小红伞免费杀毒软件广告去除工具
Avira Free Antivirus 小红伞免费杀毒软件经常跳出广告, 用起来比较烦, 这里提供一个广告去除的免费小工具. 原理就是用组策略来阻止广告的跳出, 网上到处都是. 一键傻瓜式去除, 也 ...
- 606. Construct String from Binary Tree 【easy】
606. Construct String from Binary Tree [easy] You need to construct a string consists of parenthesis ...
- ipk CONTROL 目录的作用
CONTROL文件夹下的文件意义preinst - shell script,在ipk包开始安装前执行;postinst - shell script,在ipk包安装后执行; ...
- 使用pycharm手动搭建python语言django开发环境 - 使用git管理代码(二)
在pycharm中打开项目,使用File->Version Control->Git.选中git的安装路径并点击确认. 2)在Version Control界面中,配置或新建一个git的主 ...
- 基于AFNetworking封装的网络请求工具类【原创】
今天给大家共享一个我自己封装的网络请求类,希望能帮助到大家. 前提,导入AFNetworking框架, 关于修改AFN源码:通常序列化时做对text/plan等的支持时,可以一劳永逸的修改源代码,在a ...
- openWRT自学---基于backfire版本,分析其Make命令的执行过程和各阶段的主要产物
准备阶段:从SVN下载backfire的编译环境(位置是:svn co svn://svn.openwrt.org/openwrt/branches/backfire),然后按照openWRT的要求, ...
- go开启多进程——拆分多个进程同时处理(分而治之)
使用了goroutine实现了多线程,使用chan来控制多线程. runtime.GOMAXPROCS(3)来设置最大的原生线程. runtime.Gosched() 显式地让出CPU时间给其他gor ...
- Div+CSS布局入门教程
http://www.blueidea.com/tech/site/2006/3574.asp ———————————————————————————————————————————————————— ...
- Spring MVC复选框
以下示例显示如何在使用Spring Web MVC框架的表单中使用复选框(Checkbox).首先使用Eclipse IDE来创建一个WEB工程,并按照以下步骤使用Spring Web Framewo ...
- 对Servlet容器的补充和一个问题的请教
[0]README 0.1)本文是对 一个servlet容器 的补充: 0.2)发这个博文的最终目的是为了请教各位前辈,帮我解决一个问题,问题描述在文末, 谢谢: [1]Servlet容器 1.1) ...