新建spring boot項目
- 新建一個Module
- 選擇spring boot initializr,然後Next
- 設置項這裏,只需要修改一下Artifact即可,會對應生成Name
- 按需選擇依賴項,這裏選擇web
- 創建成功後,pom.xml如下,自動引入裏剛纔選擇的web依賴項,還添加了test依賴
- 創建成功後的工程目錄結構如下:
添加REST接口測試
啓動spring boot Application類,控制檯輸出如下,表示啓動成功
注意:如果端口被佔用,則需要在application.properties中配置端口,我這裏配置了8090
瀏覽器輸入localhost:8090/test/hello,頁面返回“my first spring boot project”,說明REST接口測試通過
一定要 把Application啓動類放置在包的最外層
否則會找不到url,頁面提示如下:
[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-tFmzGecF-1592046768224)(AD4E2C463D694F94AFAD1323AA0C7443)]
編寫單元測試
創建spring boot工程時,自動生成了一個測試類,現在用這個測試類測試。
測試結果如下,status = 200(狀態碼200),body = my first spring boot project(返回體,是輸出的內容),表示測試成功
測試案例中用到了MockMvc,@Runwith
MockMvc:基於RESTful風格的SpringMvc測試
對於前後端分離的項目而言,無法直接從前端靜態代碼中測試接口的正確性,因此可以通過MockMVC來模擬HTTP請求。基於RESTful風格的SpringMVC的測試,我們可以測試完整的Spring MVC流程,即從URL請求到控制器處理,再到視圖渲染都可以測試。
作用是無需啓動服務器,利用Mock API模擬測試,它的執行過程如下:
- perform執行一個請求
- get構造一個GET請求(這裏可以是PUT、POST、DELETE、、、)
- accept接受的數據格式
- andExcept添加執行後的斷言
- andDo添加結果處理器,例如print結果
- andReturn執行完畢返回結果
@Ruwith 是一個測試啓動器,它需要的依賴項是Junit
spring boot 熱啓動
在調試接口時,需要對代碼進行修改,修改完後要重啓Web應用,此時spring boot的熱啓動就突出它的優勢。它可以在代碼修改後,實時生效,而不用重啓web應用。使用熱啓動需要在pom.xml中引入spring-boot-devtolls,然後設置Optional爲true,這個依賴項在創建工程時,可以選擇