我有两个方法在同一行中需要嘲笑.如何模拟它



以下是我的代码。

String domain = service.getURL().getDomain();

为此,我试图用以下代码模拟

when(serviceMock.getURL().getDomain()).thenReturn(someDomainName);

,但它正在抛出Null指针异常。

在这里,我正在进行两种不同的调用。是否可以模拟上述方案?

您需要在这里进行多个模拟,以便"链接"工作电话,因为我不相信这个模拟框架具有自动/递归模拟功能。

模拟service.getURL()返回模拟的URL对象,并模拟模拟URL对象的getDomain(),以表现为需要。

//...
when(urlMock.getDomain()).thenReturn(someDomainName);
when(serviceMock.getURL()).thenReturn(urlMock);
//...

那样,

String domain = service.getURL().getDomain();

被称为,它的行为会如预期的。

相关内容

  • 没有找到相关文章

最新更新