我有一个模拟的javax.ws.rs.client.WebTarget webTarget。然后我执行以下操作:

Mockito.when(webTarget.path(Mockito.anyString())).thenReturn(webTarget).


现在,我想从webTarget模拟中检索在.path(String)方法期间设置的String。我有机会做到这一点吗?当时

webTarget.getUri()


不幸的是返回null

最佳答案

要获取字符串,可以使用ArgumentCaptor

ArgumentCaptor<Person> argument = ArgumentCaptor.forClass(Person.class);
verify(mock).doSomething(argument.capture());
assertEquals("John", argument.getValue().getName());


或验证

Mockito.verify(webTarget).path("expectedString")

10-01 12:03