问题标签 [easymock]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1223 浏览

java - 如何使用 JUnit 和 EasyMock 在 MVC 集成测试中模拟视图

我想模拟MVC design pattern. 我已经实现了MVP(另一个MVC变体),并且想测试当模型上发生状态更改时控制器是否正确调用了视图中的某些方法。下面显示了对model,controller和的方法调用顺序view

模型:

控制器:

视图:这个结果被称为视图,如下所示:

问题:如何验证(EasyMockJUnit测试中使用)方法的预期顺序(带有有效参数)执行?我期望view.modelPropertyChange(evt)被调用并期望view.isViewUpdated()返回对象trueview在我的 JUnit 测试中怎么说?请帮忙!

0 投票
6 回答
17752 浏览

java - 测试没有使用 EasyMock 调用 void 方法

这可能吗?我试过EasyMock.expectLastCall().times(0);但 EasyMock 抱怨时间必须 >=1

0 投票
5 回答
3543 浏览

java - 如何关闭 EasyMock 对象的录制?

我正在测试doPost()使用 EasyMock 对象作为HttpServletRequestHttpServletResponse参数的 servlet 方法。在doPost()我正在测试的方法中,请求和响应对象用作另一个类的静态方法类的参数,我想忽略(即不按预期记录)在此方法调用中对请求和响应对象进行的任何调用(无论如何它与这个测试无关)。例如,doPost()我正在测试的 servlet 类的方法如下所示:

当上面的代码到达PortletContextFactory.createPortletContext()被调用的步骤时,我并不关心对该方法中的请求和响应对象进行了哪些方法调用,但是如果我在测试此方法时传入模拟请求和响应对象,我会从中得到错误EasyMock 告诉我缺少行为定义。例如,我有一个如下所示的测试方法:

运行测试类时出现以下错误:

我假设上面的错误是由于没有记录PortletContextFactory.createPortletContext()在作为参数传入的模拟请求和响应对象的方法内执行的方法调用引起的。如果这实际上是这里发生的事情,那么我该如何返工,以便PortletContextFactory.createPortletContext()忽略该方法对请求和响应模拟的方法调用?

0 投票
2 回答
34363 浏览

unit-testing - EasyMock andReturn() 与 andStubReturn()

andReturn(T value)使用vsandStubReturn(T value)用于 EasyMock有什么区别?

在什么情况下你会使用andStubReturn()whereandReturn()不能达到相同的结果?

0 投票
2 回答
4558 浏览

java - 如何使用 EasyMock 测试模拟调用的顺序

EasyMock中很容易做到:

但我注意到这不会测试我执行调用的顺序,这在我尝试测试的情况下非常重要。无论如何,EasyMock 可以做到这一点吗?

0 投票
3 回答
7102 浏览

unit-testing - 在方法内创建模拟对象

如果我有以下方法:

当我使用 EasyMock 使用模拟测试这个时,我是否可以像这样测试传递给我的 UserDao 模拟的用户参数:

当我尝试运行上述测试时,它抱怨我假设的意外方法调用,因为在该方法中创建的实际用户与我传入的用户不同......我对此是否正确?

或者是我可以测试我传递给 UserDao 的参数的最严格的方法是:

0 投票
1 回答
3448 浏览

java - 参数返回 void 的 EasyMock 方法

我的单元测试框架使用 EasyMock.createMock(Interace) 将业务服务组件替换为 Mock 对象。

这些组件在被测类的几个层中被访问,所以我不希望修改接口定义或被测类。

然后我使用 EasyMock.expect(...) 来驱动协作对象的行为。只要方法不返回 void,它就可以很好地工作。

当出现无效结果时,我该如何推动这种行为。IE。

0 投票
3 回答
15166 浏览

java - 如何从 EasyMock.anyObject(List.class) 调用中删除警告

编译器不能停止抱怨这个调用:

我试图指定列表的类型

但这似乎不是一个选项(无论如何,这很愚蠢,因为java会在编译期间擦除类型)

有没有一种干净的方法(@SuppressWarning 不是一种干净的方式 IMO)来删除这个警告?

谢谢

0 投票
6 回答
6603 浏览

java - 使用 Mockito、EasyMock 等进行 JUnit 模拟

我试图在我正在测试的类中模拟一个对象的方法。

例如

有没有办法模拟变量“a”的方法?我希望 doSomethingElse 在测试期间什么都不做。我目前正在使用 Mockito,但我对任何模拟框架持开放态度。

谢谢

0 投票
1 回答
281 浏览

eclipse - 在 EasyMock 期望调用上设置 Eclipse 断点的最佳方法是什么?

我有类似的代码

我希望 Eclipse 在调用 mockClockService.getNow() 时暂停程序。但是,由于 ClockService 是一个接口,我不能在 ClockService.getNow() 上设置断点,而且由于 mockClockService 是一个 EasyMock 代理,我也不能在期望行上设置断点。