问题标签 [mockito]

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 投票
3 回答
4614 浏览

android - 尝试使用 PowerMockito 存根 android Activity 类会抛出 RuntimeException "Stub!"

我发现了这个例子,他们使用 PowerMock 和 EasyMock 来存根/模拟 android 的 Menu 和 MenuItem 类。我一直在尝试使用 Activity 类对 PowerMock 和 Mockito 做类似的事情。

我知道很多方法都是最终的,并且在 Android.jar 中它们都只是抛出 RuntimeException("Stub!")。

我也明白这个测试并不完整,但我只是想看看是否可以模拟 android Activity 类。

但是鉴于 PowerMock 允许您使用最终方法模拟类,这段代码不应该工作吗?

我认为 RuntimeException 将不再发生,并且会返回“Title”,但它仍然会引发异常。

我尝试了各种不同的东西,比如doReturn("Title").when(mockActivity).getTitle();suppress(constructor(Activity.class));

我做错了什么还是这不可能?

0 投票
5 回答
278815 浏览

java - 使用 Mockito 从模拟中抛出已检查的异常

我试图让我的一个模拟对象在调用特定方法时抛出一个检查异常。我正在尝试以下。

但是,这会产生以下错误。

查看Mockito 文档,他们只使用MockitoRuntimeException是否无法从模拟对象中抛出已检查的异常?

0 投票
7 回答
75568 浏览

java - 最终方法模拟

我需要使用 mockito 用 final 方法模拟一些类。我写了这样的东西

但它失败了。我尝试了一些“hack”并且它有效。

它有效,但“闻起来”。

那么,正确的方法在哪里?

谢谢。

0 投票
1 回答
7121 浏览

java - 使用 Mockito 模拟休眠的 SessionFactory 的问题

知道为什么以下模拟代码不起作用吗?

thenReturn 语句无法编译。“OngoingStubbing 类型中的 thenReturn(Session) 方法不适用于参数 (Session)” 但是,为什么它不适用?我想我已经正确计算了进口。

0 投票
2 回答
4990 浏览

spring - Mockito 用 Spring 模拟:“传递给 verify() 的参数不是模拟!”

我使用这个博客中的代码在我的单元测试中注入了 Mockito 模拟。但是,在模拟自动装配之前,它会被 Spring 包装在 JDK 代理中。这会导致任何 verify(autowiredMock) 抛出“传递给 verify() 的参数不是模拟!” . 当 Mockito 检查传递给 verify(..) 的参数是否是此方法中有效的 Mockito 模拟对象时,将引发异常:

我的问题是如何告诉 Spring 不要代理我在 BeanFactoryPostProcessor 中注册的 Mockito 模拟 bean?请注意,我想避免设置 proxy-target-class="true"。

谢谢

0 投票
2 回答
5667 浏览

java - 我正在尝试用 Mockito 模拟 Jersey WebResource,但做不到

这是我的代码(Jersey 1.4 + Mockito 1.8.5):

编译器说:

有什么问题anyVargarg(),但究竟是什么?

0 投票
2 回答
5396 浏览

java - 我应该如何模拟 Jersey HTTP 客户端请求?

这是我要测试的类(它计算 HTTP 页面的大小):

当然,这只是一个例子,而不是现实生活中的解决方案。现在我正在尝试测试这个类:

我应该如何模拟com.sun.jersey.api.client.Client课堂?我正在尝试使用 Mockito,但任何其他框架都可以,因为我是这里的新手..

0 投票
6 回答
6603 浏览

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

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

例如

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

谢谢

0 投票
4 回答
30825 浏览

java - 如何使用 Mockito 检查参数是否包含两个子字符串?

我的测试中有一行目前看起来像:

我想修改它以检查参数是否同时包含"apple""banana"。我该怎么办?

0 投票
1 回答
9122 浏览

dependency-injection - Mockito:在整个控制流中注入 Mocks

我仍在学习模拟,现在我正在学习如何注入模拟。

我有一个正在测试的对象,它使用依赖于其他对象的特定方法。反过来,这些对象依赖于其他对象。我想模拟某些东西,并在执行过程中到处使用这些模拟——在方法的控制流中。

例如假设有如下类:

我需要编写包含以下部分的测试代码:

每当调用 apple.price() 时,我都希望使用我的模拟苹果。这可能吗?

编辑:
重要说明...
包含我要模拟的对象的类确实有该对象的设置器。但是,在我正在测试的级别上,我并没有真正掌握该课程。所以,按照这个例子,虽然 ProductManager 有一个用于 Apple 的设置器,但我没有办法从 GroceryStore 对象中获取 ProductManager。