在Sping Boot 应用程序中使用Mockito测试以Model作为参数的方法

gdx19jrr  于 2023-11-18  发布在  其他
关注(0)|答案(1)|浏览(136)

我需要编写一个测试,通过Mockito测试getData(Model model)@Service方法。

@RestController
@RequestMapping("")
public class RestCtrl {

   @Autowired
   private TestService testService;

   @GetMapping
   public ModelAndView getData(Model model) {
       return testService.getData(model)
   }
}

@Service
public class TestService {

   @Autowired
   private TestServiceRepository testServiceRepository;
 
   public ModelAndView getData(Model model) {
      model.addAttribute("data", testServiceRepository.findAll());
      return new ModelAndView("index");
   }

}

public interface TestServiceRepository extends JpaRepository<TestDTO, Long> {
}

字符串
是否可以在返回ModelAndView的@Service方法上进行写测试?

@SpringBootTest
@ExtendWith(MockitoExtension.class)
class TestServiceClass {
   @InjectMocks
   private TestService testService;

   @Mock
   private TestServiceRepository testServiceRepository;
}

sczxawaw

sczxawaw1#

是的,有可能。
您可以使用Mockito通过对Mockito.mock(ModelAndView.class);的简单调用来模拟ModelAndView的示例

相关问题