我使用Mockito在Java中编写单元测试。
这是我要测试的陈述。
final Map<EntityKey, Element<Movie>> resultMap = Watcher.watch(movies);
电影是电影名称的,这是标识电影的关键。
我嘲笑Watcher类
final Watcher<Movie> watcher = mock(Watcher.class);
mockito.when(watcher.watch(matchers.any(set.class)))。
在" theReturn" ??
在thenReturn
函数中,您需要传递与嘲笑返回类型的方法相同类型的对象。
然后在该对象上调用此方法时,它将返回您传递给thenReturn
的对象,而不是实际进入函数。
这是嘲笑背后的核心概念。
话虽如此。如果您想测试观察者。遵守方法,那么您可能还是不想模拟它。您应该只模拟那些您没有测试的课程。
您需要制作一个适合在其余测试中使用的Map<EntityKey,Element<Movie>>
。我不太确定您的测试实际试图断言,但是无论如何,都应相应地选择Map
。您的Map
对象是您要从thenReturn
返回的。