当前位置: 首页 > 知识库问答 >
问题:

Mockito:使用泛型的列表匹配器

鲍建业
2023-03-14

Mockito提供:

when(mock.process(Matchers.any(List.class)));

共有1个答案

白光耀
2023-03-14

对于Java8及以上版本,这很容易:

when(mock.process(Matchers.anyList()));

对于Java7及以下版本,编译器需要一些帮助。使用anylistof(class clazz) :

when(mock.process(Matchers.anyListOf(Bar.class)));
 类似资料:
  • 我试图模拟Spring Rest的方法。 在同一个测试中,我有多个调用,它们的不同之处在于返回类型。 mock不考虑的泛型参数,最后定义的mock胜过前者。 有什么办法能让它起作用吗?

  • 问题内容: Mockito提供: 如何避免警告,如果需要呢? 问题答案: 对于Java 8及更高版本,很简单: 对于Java 7及更低版本,编译器需要一些帮助。用途:

  • 我发现它能够以这种方式或通过抛出进行子类化,没有问题,但类型检查。 当您的子类列表工作时,方式相同。 如何才能正确子类化tuple?谢谢你的建议。

  • 可以使用泛型将返回类型与参数类型匹配吗? 实例案例: 我有一个抽象类,可以从不同的POJO导入数据,这个类包含一个abstract方法importData。 importData返回的对象必须与传递给该方法的对象类型相同。 由于抽象方法的每个实现的对象类型不同,并且类型不扩展另一个,如何定义抽象方法,以便实现返回类型和传递类型必须匹配? 经过考验: 结果: 方法的返回类型不必与传递的对象类型匹配。

  • 我有一个带有泛型参数的抽象测试类。 我已经实现了它的一个具体测试类。 方法签名如下所示 当运行时,我得到一个说 为什么?我有什么办法可以解决这个问题吗?

  • 问题内容: 我正在使用Mockito 1.9.5。我有以下代码: 我收到一句编译错误: 但是,当我使用模拟方法时,不会出现错误。谁能告诉我怎么回事?使用该方法时为什么会出现错误?当第三方提供且无法修改时,还有其他方法可以解决此问题吗? 问题答案: 编辑 :从Mockito 1.10.x开始,嵌入在类中的泛型类型现在由Mockito用于深层存根。即。 Mockito尽最大努力获取编译器嵌入的类型信息