我试图用电力模拟来测试我的课程
这是我的班级:
public Basket createBasket(Basket basket) {
if (LOGGER.isInfoEnabled()) {
LOGGER.info("In BasketInformationServiceImpl.createBasket : [" + basket.toString() + "]");
}
try {
if (StringUtils.isBlank(basket.getBasketAdditionsAllowedInd())) {
basket.setBasketAdditionsAllowedInd("Y");
}
这是我的测试:
public void testCreateBasketCallsSetBasketAdditionsAllowedIndInBasket(){
PowerMockito.mockStatic(StringUtils.class);
when(StringUtils.isBlank(mockBasket.getBasketAdditionsAllowedInd())).thenReturn(true);
basketInformationServiceImpl.createBasket(mockBasket);
verify(mockBasket,times(1)).setBasketAdditionsAllowedInd(anyString());
}
我得到的错误是:
org.mockito.exceptions.missing.WrongTypeOfReturnValue;
Boolean cannot be returned by getBasketAdditionsAllowedInd()
getBasketAdditionsAllowedInd() should return string
有谁知道为什么我会收到这个错误以及如何克服它?
P.S。使用power mock作为StringUtils是一个静态类
答案 0 :(得分:0)
你有没有在其他地方嘲笑mockBasket.getBasketAdditionsAllowedInd?
如果是这样,请尝试将违规行拆分为两部分。
String allowedInd = mockBasket.getBasketAdditionsAllowedInd();
when(StringUtils.isBlank(allowedInd)).thenReturn(true);
你为什么要嘲笑一个静态类?