我正在尝试使用Mockito模拟服务。 但是我没有找到一种方法来对嘲笑说给定一个类的实例返回相同的实例:

就像是 :

  given(service.add(any(Individual.class)).willReturn(any(Individual.class));

任何想法我该怎么做?

#1楼 票数:1 已采纳

您可以分析调用以访问参数。

    given(service.add(any(Individual.class)))
            .will(invocation -> invocation.getArgument(0));

#2楼 票数:1

您可以使用AdditionalAnswers.returnsFirstArg()

when(service.add(any(Individual.class)).then(AdditionalAnswers.returnsFirstArg());

或使用BDD包装器:

given(service.add(any(Individual.class)).willReturn(AdditionalAnswers.returnsFirstArg());

  ask by taboubim translate from so

未解决问题?本站智能推荐:

2回复

Mockito:当任何实例调用方法时,然后返回某物

我对 Mockito 很陌生,并且有一个类似的课程 和 我正在使用 Mockito 为 A 类编写单元测试,并尝试实现以下行为,其中 B 是模拟: 当 C 的任何模拟实例调用 doSomething() 时,如何返回“somethingElse”? 我不想将此行为绑定到任何一个特定的 mock(C.
2回复

JUnit/Mockito验证`any(HttpPut.class)`时也通过了其他实例

我有一个服务类,该服务类调用REST API来获取,创建,更新和删除订户。 Uri保持不变,但是HTTP方法发生了预期的变化。 我想测试给出的正确方法。 以下是updateSubscriber及其测试的示例。 这是我对JUnit和Mockito的测试: 但是,当我(错误地)拥有另一
1回复

Mockito:没有这样的实例方法

我正在为以下给定方法编写测试用例。 方法: 以下代码段是给定方法的测试用例。 测试用例: 在调试代码时,由于userProfileDetail的值为null,我的执行在给定的行以下失败。 在对accessClient.getAccess(userAccessBean,app
3回复

Mockito模拟带有参数的新实例调用

出于学校目的,我正在创建一个使用股票API的应用程序。 我正在尝试编写一种测试方法,以获取过去10年的所有库存数据。 我不想抛出所有的数据,而是想抛出一个异常。 我要测试的方法: stockTimeSeries.daily(....)调用可能引发AlphaVantageExcept
1回复

Mockito:类的所有实例的模拟实例方法

我正在尝试存根特定类的实例方法,以便当此Foo类的任何实例调用此实例方法doSomething ,将返回相同的object (请参阅下面的代码)。 但是,mockito 不允许验证或存根之外的任何匹配器。 在Foo.class : 我可以通过 Mockito 实现这个目标吗? 谢谢!
2回复
1回复

使用Mockito时实例变量保持为空

我有以下课程 这是它的测试班 如果我按原样运行测试类,则测试通过。 但是,如果取消注释Mockito行并修改assertEquals以期望“ dbName”,则测试将失败并显示以下错误: 问题是因为实例变量“名称”由于某种原因没有被填充,即使它的声明中已经有值。 我是Mockit
1回复

无法使用InjectMocks-Mockito实例化模拟对象

我对TDD和Mockito还是陌生的,我试图将模拟注入到一个类中以执行单元测试,该类根据一些验证在一个方法中实例化其依赖关系,但出现错误 测试类别/方法 模拟的类repositoryimpl wsdl模拟类 领域类债务 最终测试课 这是我得到的错误,我正尝试避免使用构造函