当前位置: 首页 > 面试题库 >

Mockito:使用通用参数进行验证

左华灿
2023-03-14
问题内容

使用Mockito,我可以执行以下操作:

verify(someService).process(any(Person.class));

但是,如果processCollection<Person>取而代之,我该怎么写呢?无法弄清楚如何正确编写。刚收到语法错误…


问题答案:

尝试:

verify(someService).process(Matchers.<Collection<Person>>any());

实际上,当我键入IntelliJ时,它会自动建议此修复程序any()。不幸的是,在这种情况下,您不能使用静态导入。



 类似资料:
  • 问题内容: 这是从这个问题开始的:要求我在哪里开始一个新的问题。 问题是我只是对JUnit 或有关的东西之类的东西还不够了解,无法用Jeff Bowman提到的方式解决问题。 问题答案: 在您以后的评论中,我指出了差距:您需要使用Mockito作为规则,而将参数化为Runner,而不是相反。 原因是Runner负责报告测试数量,而Parameterized则根据测试方法的数量和参数化输入的数量来操

  • 我在SUT中有这段代码: 我知道模型不会为空,因为模型已经存在。因此,我希望不应该与model一起调用。因此,我需要某种的方法,以确保该方法不是用此参数调用的。现在我知道了如何进行相反的操作:如何确保/验证或任何方法本身是在的帮助下用参数调用的,但不确定当前的场景。请帮帮忙。 谢谢

  • 我在类中有一个签名为的方法。 我有一个调用方法的代码块: 如果我想测试databaseService.save(user)没有被调用,那么我如何用Mockito(3.3.3版)来做呢?

  • 问题内容: 有没有一种使用通用参数模拟类的干净方法?说我必须模拟一个类,我需要将该类传递给需要一个的方法。我可以很容易地做到以下几点: 假定返回通用类型。但是,当我稍后将其传递给期望的方法时,将会有小猫。铸造是这样做的唯一方法吗? 问题答案: 我认为您确实需要强制转换,但应该不会太糟:

  • 我使用JUnit4和Mockito创建了一个Spring Boot2应用程序。当我测试某种方法时。会出现这样的例外: 这是我的测试代码 SuveryService.java SurveyRepository.java 我引用了这篇文章Mockito NullPointerException,但这个问题仍然存在。任何帮助都将被应用。

  • 为了验证输入字段是否包含数值,我正在使用jQuery的isNumic()方法: 这在大多数情况下都可以正常工作,但以下示例失败了: 如果不是数值,则返回true。 有没有更好的方法在不使用任何其他插件的情况下进行此类验证? 谢谢。