我想测试我的服务层方法addEmployee,其中存在一个标准,即部门存在,而只应插入某些雇员。也就是说,实体的雇员和部门之间存在多对一和一对多的双向关系。条件是如果存在部门,则仅应插入员工。因此,我想测试服务层,以确保当部门不存在且仍插入该员工时,该方法的行为是否与我期望的相同
这是我的addEmployeeMethod。
public EmployeeTest addEmployee(EmployeeTestDTO employeeTestDTO) throws EmployeeException {
String dept_name = modelMapper.map(employeeTestDTO, EmployeeTest.class).getDepartmentTest().getDeptName();
DepartmentTest departmentTest = departmentTestService.findDepartmentByDeptName(dept_name);
if(departmentTest == null){
throw new EmployeeException("Department doesn't exist");
}
else {
EmployeeTest employeeTest = modelMapper.map(employeeTestDTO,EmployeeTest.class);
employeeTest.setDepartmentTest(departmentTest);
return employeeTestRespository.save(employeeTest);
}
如何使用模拟MockMvc编写测试用例,其中模拟了Repo和Service对象。我读了某些博客,但没有一个博客涵盖了这个复杂的细节。