使用带有集成测试的MockMvc来测试服务层,其中所有bean都被模拟

时间:2019-09-25 03:22:14

标签: spring spring-boot spring-mvc junit mockito

我想测试我的服务层方法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对象。我读了某些博客,但没有一个博客涵盖了这个复杂的细节。

0 个答案:

没有答案