问题标签 [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 回答
10088 浏览

java - 预计 3 个匹配器,4 个记录

我在模拟录制期间收到此异常。我尝试在这个论坛中寻找解决方案,并确保我没有弄乱任何其他参数。

下面的模拟期望给出了错误。

在此声明之前,我对具有两个参数的同一方法(重载方法)有另一个模拟期望。下面是那个模拟。

有人可以指导我吗?谢谢。

0 投票
3 回答
5010 浏览

function - 无法使用 powermock-easymock-testng 模拟静态函数(非 Maven 项目)

首先告诉你,我已经尝试过,现在我需要一些帮助

这是我的代码

[解析器] 运行:C:\MockWorkspace\Mock\temp-testng-customsuite.xml

请帮助,我尝试了各种解决方案,无法完成。请任何人都可以尝试此代码并更正它以获得成功吗?我在 EasyMock.expect 中遇到错误......

在http://blogs.bytecode.com.au/glen/2006/10/12/doing-bytecode-kungfu-with-javassist.html得到了解决, 它可以工作但是等等...... .我又被卡住了我的测试用例在单独运行时工作正常,但是当与 Ant 一起运行时,它会出现问题。可能是不同文件的其他测试用例在干扰。当我的个人测试用例使用 @PrepareTest & easymock/powermock 时,我遇到了同样的错误

[测试] =====================静态调用========================= == [testng] javassist.CannotCompileException:由 java.lang.LinkageError:加载程序(sun/misc/Launcher$AppClass Loader 的实例):尝试重复的类定义名称:“com/symantec/mobius/aggregator/submission/SubmissionFactory” [testng] 在 javassist.ClassPool.toClass(ClassPool.java:1085) [testng] 在 javassist.ClassPool.toClass(ClassPool.java:1028) [testng] 在 javassist.ClassPool.toClass(ClassPool.java:986) [testng ] 在 javassist.CtClass.toClass(CtClass.java:1110)

0 投票
2 回答
309 浏览

java - 请求时轻松模拟行为

我在想,是否可以使用 EasyMock 模拟整个对象的行为,但是一旦声明具有所有预期值和结果的模拟,就可以多次使用而不关心请求的顺序?

这样做的目的是创建一个模拟实例,例如在 JUnit 测试 @BeforeClass 中,并在几个 @Test 方法中使用它。

提前感谢您的任何意见,

问候,P。

0 投票
1 回答
1187 浏览

unit-testing - 模拟一个新的对象创建

我正在使用 EasyMocks。
在方法内部创建了一个新对象。并在该对象上调用一个方法,该方法返回一个地图。如下图

那时我想返回一个自定义地图。我该怎么做。
谢谢。

0 投票
1 回答
12206 浏览

java - EasyMock 为预期方法返回 Null

我遇到了 EasyMock 为预期的(定义的)方法调用返回 null 的问题。

创建模拟对象

在单元测试中模拟设置。

processData 方法只是调用

这是构建模拟的接口。

我对可能导致问题的原因感到非常困惑。我已经确认 'obj' 与我在单元测试中定义的对象相同。我也没有使用任何其他模拟的方法遇到过这个问题(我知道)。

问题可能出在传入的对象上吗?

提前致谢。我真的不确定还有哪些其他信息可能对您有所帮助。

编辑:这是测试课(事实证明我的误解开始了)

0 投票
2 回答
423 浏览

java - 当所有节点都是模拟时,如何使用 EasyMock 测试“调用树”?

假设我有三种类型:TopHandlerHandlerAHandlerB。他们每个人都有一个void handle(Something)方法。

一个实例TopHandler持有对HandlerAand实例的引用,并且它在and上HandlerB调用。handle()HandlerAHandlerB

在我的测试中,我想模拟所有三个对象,然后验证对 topHandler 的调用是否会导致对其他两个对象的调用。

我该如何指定?我知道 EasyMock 可以让我指定模拟的预期行为,但我不清楚在这里使用哪些功能。

0 投票
5 回答
7366 浏览

java - 如何模拟无法在测试中实例化的对象?

我正在使用 EasyMock 在我的测试中模拟对象。但是如何模拟在我的代码中其他地方创建的对象?看下面的伪代码。我想模拟 WebService#getPersonById,我该怎么做?

0 投票
1 回答
7564 浏览

java - 使用 PowerMock 模拟静态和动态方法

假设我们有

我想做的是在我的单元测试中模拟它。我需要模拟一个类的静态和动态方法Foo。嘲笑getInstance()就像

问题是,如何模拟bar方法?

以前的技巧 withreplace(method(...)).with(method(...))不起作用,因为它不是为动态方法设计的。

试图在已经模拟的类之上模拟也行不通:

上面的代码抛出AssertionError: Unexpected method call bar.

那么我该怎么做呢?我不想将嘲笑.bar(...)放入,因为在现实世界中,我需要一些静态方法getMockInstance中不可用的数据。getMockInstance

0 投票
1 回答
7812 浏览

java - 如何让 EasyMock 模拟多次返回空列表

我希望 EasyMock 模拟能够多次期待一个空列表,即使第一次返回的列表中添加了元素。

这可能吗?由于期望中创建的空列表在整个重播中持续存在,因此保留了在两次调用之间添加到其中的任何元素。

这是一个代码示例,显示了我要避免的情况:

0 投票
3 回答
8131 浏览

java - 测试调用本机方法的代码

我有这样的课:

请注意getBar()是用 JNI 实现的,并且该类是final。我想编写一个 junit 测试来测试toString()方法。为此,我需要模拟getBar()方法,然后运行原始的toString()方法来检查输出。

我的第一个想法是这一定是不可能的,但后来我发现PowerMock支持根据功能列表测试最终类和本机方法。但到目前为止,我还没有成功。我管理的最好的事情是模拟整个类,但随后测试测试了模拟的toString()方法而不是真正的方法,这没有多大意义。

那么如何使用 PowerMock 从上面测试这个toString()方法呢?我更喜欢将 PowerMock 与Mockito一起使用,但如果这不可能,我可以使用EasyMock来代替。