【发布时间】:2021-05-11 18:37:23
【问题描述】:
所以我在我的 Rest API 上进行 Spring 启动测试,我很挣扎。 当我在我的服务类上搜索测试并尝试它们时,它们大多不起作用,或者我的 SonarQube 没有说我的服务类中的删除方法已经过测试。 这就是为什么我来到这里并想要一个可以工作并涵盖代码的propper删除单元测试的示例。如果我有这个测试,我可以继续并尝试自己进行其他测试。
这是我的服务类:
@Service
@Transactional
public class PartyLeaderService {
@Autowired
private PartyLeaderRepository partyLeaderRepository;
@Autowired
ModelMapper modelMapper;
public List<PartyLeader> listAllPartyLeaders() {
return partyLeaderRepository.findAll();
}
public void savePartyLeader(PartyLeaderDto partyLeaderDto) {
PartyLeader partyLeader = convertToEntity(partyLeaderDto);
partyLeaderRepository.save(partyLeader);
}
public PartyLeaderDto getPartyLeader(Integer id) {
PartyLeader partyLeader = partyLeaderRepository.findById(id).orElse(null);
return convertToDto(partyLeader);
}
public void deletePartyLeader(Integer id) {
partyLeaderRepository.deleteById(id);
}
public void deleteAllLeaders() {
partyLeaderRepository.deleteAll();}
private PartyLeaderDto convertToDto(PartyLeader partyLeader) {
PartyLeaderDto partyLeaderDto = modelMapper.map(partyLeader, PartyLeaderDto.class);
return partyLeaderDto;
}
private PartyLeader convertToEntity(PartyLeaderDto partyLeaderDto) {
PartyLeader entity = new PartyLeader();
entity.setId(partyLeaderDto.getId());
entity.setName(partyLeaderDto.getName());
entity.setApperance(partyLeaderDto.getApperance());
return entity;
}
}
我还希望它模拟测试,以便在我的数据库中实际删除任何内容。 谁能帮我? 提前致谢!
【问题讨论】:
标签: spring-boot unit-testing spring-test