mockito 相关问题

Mockito是Java的模拟框架。它的灵感来自EasyMock,但旨在进一步简化模拟存根,验证和工具。

InjectMocks 错误地将相同的 Mock 注入到相似类型的 2 个不同字段中,尽管创建了 2 个不同的模拟

我有一个类,它有 2 个类似类型的字段。我曾经嘲笑过他们两个。但是当我使用 InjectMocks 时,注入模拟错误地将单个模拟注入到这两个字段中。 这是示例代码...

回答 2 投票 0

异常:mockito想要但没有被调用,实际上与这个mock的交互为零

我有界面 接口我的接口{ myMethodToBeVerified(字符串,字符串); } 接口的实现是 类 MyClassToBeTested 实现 MyInterface { myMethodToBeVerified(Stri...

回答 6 投票 0

Mockito 测试失败并显示“想要但未调用;”事实上,零互动的错误

我在 Spring Boot 应用程序中遇到单元测试问题,其中在服务方法测试期间未按预期调用特定存储库方法。尽管设置了测试

回答 1 投票 0

使用mockito模拟javax.xml.ws.Service父类

我有一个Java类,我正在尝试使用testng和mockito编写单元测试。该类继承自 javax.xml.ws.Service 类。 服务类所需的 WSDL URL 当前为

回答 1 投票 0

couchbase 7.2 升级后数据库调用 java 代码的测试覆盖率

我们最近将 Couchbase DB 从 6.x 升级到 7.2 。其中介绍了集合和范围以及存储桶。这意味着这个 GetResult serviceInventoryJsonDocument = this.bucket.

回答 1 投票 0

我想模拟一个类的构造函数,并且仍然使用 Mockito 调用该类的真实方法

我正在尝试对 A 类进行单元测试,我在其构造函数 getB() 中调用一个方法。我想对这个类 A 进行单元测试,而不在构造函数内调用此方法,以便测试其他方法

回答 1 投票 0

如何使用mockito模拟构造函数?

我正在测试某个类的方法,该类具有 BuildingBlockDbHandler.class 的新构造函数调用。我之前使用 powermock 来模拟构造函数,就像这样 - BuildingBlockDbHandler blockDbH...

回答 2 投票 0

when() 需要参数,Mockito 和 BCrypt

我正在尝试在项目中进行单元测试,但我一直在尝试模拟 BCrypt.checkpw 函数,我读到制作静态模拟需要某种方式来处理测试,我我不知道...

回答 1 投票 0

Java Mockito:MockedStatic 在自己的行中,没有花括号

有没有什么方法可以将代码移出 MockedStatic 大括号并使所有内容都成为自己的行,而不会产生副作用?只是好奇地看看这里的模板,如果没有答案,那就好了......

回答 1 投票 0

java.lang.IllegalArgumentException:发件人地址不得为空

我有一个使用 Java 17 和 Spring 3 的项目。在我的 pom.xml 中,测试扩展如下: junit-jupiter:版本 5.10.1。 mockito-core:版本 5.8.0。 mockito-junit-jupiter:版本 5.8.0 我...

回答 1 投票 0

reactor + Mockito 存根中的重试机制

考虑以下代码片段: @预定(...) 公共无效cleanUpDbs(){ fooRepository.deleteAll() .retryWhen(重试.backoff(3, Duration.ofSeconds(2))) .doOnError(日志::错误) ...

回答 1 投票 0

Mockito,当参数为函数时验证函数调用

您能否建议我如何通过 Mockito 检查函数调用是否参数也是函数。 我们假设三个服务类别,为简洁起见省略了详细信息 类 SomeService { 公共...

回答 1 投票 0

在测试主题类中调用时,Mockbean 不会抛出错误

似乎返回 void 的mockbean 在测试对象内部调用时不会抛出错误。我可以在外面调用它,但它会抛出错误。是不是有什么问题...

回答 3 投票 0

在单元测试中,如何在注入服务类的构造函数工作之前模拟测试类中的值

我正在为一个服务类编写单元测试,我们称之为MyService,其格式如下: 公共类我的服务{ 私有最终 HttpHeaders headers = new HttpHeaders(); 酒吧...

回答 1 投票 0

@RunWith(MockitoJUnitRunner::class) 无法识别mockito库

我试图使用 Mockito 来为我的测试提供上下文,但它说我需要添加我已经拥有的库“Gradle: org.mockito:mockito-core:4.0.0”。我在看...

回答 1 投票 0

使用 @MockBean 的 Spring Boot 测试无法模拟映射器

我目前正在开发 Spring Boot 应用程序,我正在尝试使用 @MockBean 为我的服务层编写一个测试,以避免与数据库交互。这是测试代码: //CountCarts 遇到...

回答 1 投票 0

为什么当模拟谓词时,返回空指针?

我的谓词执行时返回空指针。 我的测试代码: 公共类 CompanyRepositoryTest { @嘲笑 私有EntityManager实体管理器; @嘲笑 私人 CriteriaBuilder

回答 1 投票 0

MissingDummyValueError: Either<Failure, Class> 这意味着 Mockito 不够智能,无法生成“Either<Failure, Class>”类型的虚拟值

我正在尝试使用 Either 包编写测试,但出现以下错误。错误中提到的provideDummy是什么? 缺少虚拟值错误:要么 这个

回答 1 投票 0

Mockito - verifyNoMoreInteractions - 使用不同参数的多次调用

当多次在mock上调用相同的方法时,Mockito似乎错误地解释了verifyNoMoreInteractions()。在下面的示例中, someInterface.doSomething(param) 被多次调用...

回答 1 投票 0

Mockito.any() 通过泛型接口

是否可以用泛型传递接口的类型? 界面: 公共接口 AsyncCallback 在我的测试方法中: Mockito.any(AsyncCallback.class) 推杆 是否可以用泛型传递接口的类型? 界面: public interface AsyncCallback<T> 在我的测试方法中: Mockito.any(AsyncCallback.class) 将 <ResponseX> 放在后面或用于 .class 不起作用。 有一种类型安全的方法:使用 ArgumentMatchers.any() 并用类型限定它: ArgumentMatchers.<AsyncCallback<ResponseX>>any() 使用 Java 8,由于增强的类型推断,您可以简单地使用 any()(假设静态导入)而无需参数或类型参数。编译器现在从目标类型(方法参数的类型)知道您实际上的意思是 Matchers.<AsyncCallback<ResponseX>>any(),这是 Java 8 之前的解决方案。 我必须采用以下机制来允许泛型: import static org.mockito.Matchers.any; List<String> list = any(); when(callMyMethod.getResult(list)).thenReturn(myResultString); 希望这对某人有帮助。 将 pierrefevrier 评论发布为答案,如果它出现在答案而不是评论中,这可能会很有用。 使用新版本的 Mockito:(Matchers.<AsyncCallback<ResponseX>>any() 我在使用 Spring 时也遇到了类似的问题 Example: Mockito.when(repo.findAll(Mockito.<Example<SampleEntity>>any())) .thenReturn(Lists.emptyList()); 这里,你必须使用限定条件,b/c findAll 方法可以采用多种类型,例如 Sort 和 Iterable。当然,您也可以将 Mockito.any(Example.class) 与类型安全警告一起使用。 进一步 thSoft 的回答将合格的调用放在方法中的 any() 意味着我可以删除资格,因为返回类型允许推断: private HashMap<String, String> anyStringStringHashMap() { return Matchers.any(); } 将合格的泛型类型与无参数 any() 方法一起使用是可行的(即 ArgumentMatchers.<AsyncCallback<ResponseX>>any()),但对于较长的泛型表达式可能会变得难以处理。另一种方法是将无参数 any() 调用放入其自己的泛型方法中,使用特定的泛型类型作为返回类型: private static <T> AsyncCallback<T> anyAsyncCallback() { return ArgumentMatchers.any() } 使用方法 Mockito.verify(mockObject).performCallback(any(), anyAsyncCallback()) 您可以直接投射它,如果您愿意,可以添加抑制警告: @SuppressWarnings("unchecked") AsyncCallback<ResponseX> callback = Mockito.any(AsyncCallback.class) 如果 Java 允许“通用”泛型,他们可能会有这样的方法,这就是您正在寻找的 private static <T, E> T<E> mock(Class<T<E>> clazz)

回答 8 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.