我使用mockejb框架来模拟内存中的实体bean,我进行了查找,mockejb为我带来了真实实体的代理。这是工作。
但是我需要从容器JNDI获得一个会话Bean来"理解"这一点。我的意思是,当会话Bean对实体Bean进行查找时,我希望它接收我所模拟的Bean,而不是来自数据库的Bean。
我不能模拟这个会话Bean,因为在我试图模拟的方法中,有一个对实体Bean的查找,所以,我需要这个方法正常执行,但在查找时要接收模拟Bean。
(更新)关于我的开发环境的信息:我用的是IBM RSA 7.5, IBM Websphere 6.1,我有一个运行在Cactus容器中的Web测试项目,类路径上的最后一个lib是:
- cactus-1.7.2.jar
- cglib - nodep - 2.1 - _3.jar
- commons-httpclient-2.0.2.jar
- commons-logging-1.0.4.jar
- powermock-easymock-1.3.9-full.jar
- junit-3.8.1.jar
- mockejb.jar
奥林匹克广播服务公司。我已经用jUnit4换成了最新的powermock版本,并尝试只使用EasyMock 3.0,也尝试了EasyMock 2。X及其类扩展。这些都不起作用。真正让我感兴趣的是EasyMock文档中提到的DefaultInstantiator配置:http://easymock.org/EasyMock2_4_ClassExtension_Documentation.html。我想知道这是不是我的情况(不支持JVM),我不能使它工作。
"我不能模拟这个会话Bean,因为在我试图模拟的方法中,有一个实体Bean查找,所以,"
你不能使用像PowerMock这样的东西来"伪造"查找吗?比如替换方法等
这是我最近遇到的一些事情:http://dave00ster.blogspot.com/2011/07/powermock-static-method-replace.html
希望这有帮助,dave00