我有一個簡單的Java Spring REST API應用程序,我不知道如何單元測試它。我已閱讀JUnit和Mockito的文檔,但我無法弄清楚。在Java和Spring中測試REST API的單元
這裏是在StudentController類
@RequestMapping(method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE)
public void insertStudent(@RequestBody Student student){
studentService.insertStudent(student);
}
POST方法在這裏是在StudentService類
public void insertStudent(Student student) {
studentDao.insertStudent(student);
}
我使用MySQL數據庫insertStudent方法。我是否也應該使用數據庫進行單元測試?我的意思是我不想要任何集成測試。我只想單元測試。我在Node.js中使用supertest,它會照顧所有人,我可以使用JUnit或Mockito嗎?
控制器的模擬單元測試會嘲笑服務並確保調用正確的方法,您當然可以使用JUnit + Mockito進行調用。那麼不需要數據庫,因爲真正的服務沒有被使用。 – jonrsharpe
@jonrsharpe你能給我一個鏈接,顯示我可以做到這一點嗎? –
已經有大量的例子,我會推薦研究。見例如https://stackoverflow.com/q/10906945/3001761 – jonrsharpe