如何在测试方法中正确返回元素。我的考试有问题。
when(teamService.createTeam(teamDto)).thenReturn();
在这一行中,我不知道如何正确编写return语句。thenReturn之后应该放在括号中。
我的方法创建团队如下所示:
@Transactional
public Team createTeam(TeamDto teamDto) {
Assert.notNull(teamDto, "Object can't be null!");
try {
Assert.notNull(teamDto.getName());
return teamRepository.save(modelMapper.map(teamDto, Team.class));
} catch (Exception e) {
throw new CreateEntityException(e);
}
}
在这种方法中,我返回Team对象,但是当我添加Team时,我期望得到表达式。
最佳答案
根据您要执行的操作,您可以执行以下操作:
when(teamService.createTeam(teamDto)).thenReturn(new Team());
要么
Team team = mock(Team.class);
when(teamService.createTeam(teamDto)).thenReturn(team);
PS:我假设您正在测试的类不是包含您发布的方法的类。我假设您正在嘲笑该服务,因此在某处之前,您应该编写如下内容:
TeamService teamService = mock(TeamService.class);