gpt4 book ai didi

java - 如何在 Java 中模拟嵌套方法

转载 作者:行者123 更新时间:2023-11-30 02:21:09 25 4
gpt4 key购买 nike

为了测试我的程序,我需要模拟方法调用,例如:

entityManager.createQuery("SELECT...", Integer.class).getSingleResult()

createQuery部分返回 TypedQuery<Integer> ,但实际上我只想返回一个整数:1。目前我正在使用 Mockito 来创建我的模拟,对此我还很陌生。

有没有办法测试这个?

谢谢!

最佳答案

假设您有 EntityManager 类,Query。您可以像下面这样模拟您的测试。 (mock()、any()、when() ...方法在 Mockito 中)

int result = 1;
Query query = mock(Query.class);
EntityManager entityManager = mock(EntityManager.class);

when(entityManager.createQuery(any(), any()).thenReturn(query);
when(query.getSingleResult()).thenReturn(result);

关于java - 如何在 Java 中模拟嵌套方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46805006/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com