出现下一个问题,当我测试方法时,出现异常NoSuchElementException-〉不存在值
我的嘲笑
@InjectMocks
private CarServiceImpl carService;
@Mock
private CarRepository carrepo;
我的测试
@Test
void getCarById() {
Car car = new Car();
car.setId(1L);
carService.getCarById(1l);
when(carrepo.findById(1l)).thenReturn(Optional.of(car));
Car actualCar = carService.getCarById(1L);
Assertions.assertEquals (car, actualCar);
}
和服务层
@Override
public Car getCarById(Long id) {
return carrepo.findById(id).get();
}
如果有人知道问题出在哪里,请帮助我
2条答案
按热度按时间q8l4jmvw1#
不确定您要在此测试中完成什么,但您在Mockito
when
之前调用了carService.getCarById(1L);
,也在之后调用了carService.getCarById(1L);
,但我猜您最初调用getCarById(1L)
时没有可用的值,因此出现no value present
消息。roejwanj2#
这次考试我会通过的,大家加油!