1

我在代码中添加了两个条件:
n 代码if被正确覆盖,但是我无法覆盖该else if部分

public Optional < Flavors > callIcecream() {
    try {
        if (icecream == 1) {
            //do something
            return Optional.of(someString)
        } else if (icecream > 1) {
            //do something else
            log.error("");
        }
        return empty();
    } catch (Exception e) {
        throw new IceCreamException()
    }
}

我在下面添加了突变覆盖的代码

@Test
void getIcreamValues(){
  when(abc.buyIcream(Mockito.anyString())).thenReturn(getIcream(1));
  final Optional<Falvors>icecreamInfo = xyz.callIcecream();
  assertThat(icecreamInfo).isPresent();
}


@Test
void getIcreamValues(){
  when(abc.buyIcream(Mockito.anyString())).thenReturn(getIcream(0));
  final Optional<Falvors>icecreamInfo = xyz.callIcecream();
  assertThat(icecreamInfo).isEmpty();
}

@Test
void getIcreamValues(){
  when(abc.buyIcream(Mockito.anyString())).thenReturn(getIcream(2));
  final Optional<Falvors>icecreamInfo = xyz.callIcecream();
  assertThat(icecreamInfo).isPresent();
}
4

0 回答 0