日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

Spring Boot 集成测试

發布時間:2024/9/30 javascript 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring Boot 集成测试 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、測試一般程序

1.1 測試步驟
  • 在pom.xml 中加入測試環境的依賴。
  • 在測試類上加入@RunWith(SpringRunner.class) 與@SpringBootTest 注解。
  • 1.2 簡單測試例子

    在pom.xml 中引入相關依賴

    <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope> </dependency>

    要測試的程序代碼

    @Repository public class UserDao {public void addUser(String username){if(username.equals("zhangsan")){System.out.println("===============");}else {System.out.println("---------------");}} }

    測試代碼

    @RunWith(SpringRunner.class) @SpringBootTest public class SpringbootApplicationTests {@Autowiredprivate UserDao userDao;@Testpublic void testAddUser() {userDao.addUser("zhangsan");}}

    測試結果

    二、測試 Controller

    2.1 使用TestRestTemplate 對象測試

    測試步驟

  • 在pom.xml 中加入測試環境的依賴。
  • 在測試類上加入@RunWith(SpringRunner.class)與
    @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) 注解。
  • 使用TestRestTemplate 完成測試
  • 要測試的 controller

    @RestController public class UserController{@GetMapping("/show/{id}")public String show(@PathVariable Integer id){return "show" + id; }}

    測試代碼

    /** TestRestTemplate 需要運行在 web 項目中 */ @RunWith(SpringRunner.class) @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) public class ControllerTest {@Autowiredprivate TestRestTemplate template;@Testpublic void testController(){// template.getForObject() 會得到 controller 返回的 json 值String content = template.getForObject("/show/100", String.class);// 使用斷言測試,使用正確的斷言Assert.assertEquals("show100", content);} }

    正確的測試結果

    當斷言不正確時,測試的結果

    2.2 使用@WebMvcTest 注解測試

    測試步驟

  • 在pom.xml 中加入測試環境的依賴。
  • 在測試類上加入@RunWith(SpringRunner.class) 與@WebMvcTest 注解。
  • 仍然使用UserController 控制器。

    測試代碼

    /** @WebMvcTest 注解需要指定測試控制器所在的類 */ @RunWith(SpringRunner.class) @WebMvcTest(UserController.class) public class ControllerTest2 {@Autowiredprivate MockMvc mvc;@Testpublic void testController() throws Exception {// 模擬請求,并期望執行成功mvc.perform(MockMvcRequestBuilders.get("/show/100").param("id", "100")).andExpect(MockMvcResultMatchers.status().isOk());// 模擬請求,并期望執行成功,以及期望其返回的值是“show100”mvc.perform(MockMvcRequestBuilders.get("/show/100").param("id", "100")).andExpect(MockMvcResultMatchers.content().string("show100"));} }

    正確的測試結果

    當期望返回的結果與請求的數據不一致時,測試的結果

    2.3@WebMvcTest 與@SpringBootTest 注解總結

    @WebMvcTest 與@SpringBootTest 注解不能在一起使用。

    還需要注意的地方是在使用@WebMvcTest 注解進行測試時,該注解不會加載在 controller 中的其他依賴。也就是說這個注解不會加載整個 Spring 容器,它只會加載在@WebMvcTest() 中配置的 bean。

    @SpringBootTest 注解會加載所有被 Spring 容器管理的 bean。

    MockMvc 對象并不常常與@WebMvcTest() 注解在一起使用,在你想使用MockMvc 對象時,又希望會加載被 Spring 容器管理的 bean,你可以這樣做。

    @RunWith(SpringRunner.class) @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) @AutoConfigureMockMvc public class TestController3 {@Autowiredprivate MockMvc mockMvc; }

    總結

    以上是生活随笔為你收集整理的Spring Boot 集成测试的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 高h教授1v1h喂奶 | 一级毛片基地 | 国产黄色大片在线观看 | 怡红院一区二区 | 好吊妞视频这里只有精品 | 日韩综合| 韩国三级视频在线 | 偷拍亚洲另类 | 三浦理惠子av在线播放 | jizz一区二区三区 | 欧美黄色三级 | 日本一级黄色 | 国产精品主播一区二区 | 久久窝窝| 国产精品入口麻豆 | 丁香婷婷社区 | 国产xxxx| 亚洲热在线视频 | 黄色骚视频| 成人午夜视频在线观看 | 视频在线观看 | 在线va| 美国毛片av | 欧美搞逼视频 | 成人在线视频网站 | 亚洲一区亚洲二区 | 高清一二三区 | 国产黄色免费看 | 中文字幕人妻一区二区 | 日韩欧美少妇 | 一卡二卡三卡视频 | 伊人导航| 看免费的毛片 | 国产性精品 | 久久性色av | 亚洲一区电影 | 67194成人在线观看 | 亚洲天堂视频在线观看 | 中文在线视频观看 | 日本一区中文 | 天天摸夜夜爽 | 日韩欧美一级片 | 波多野结衣在线免费视频 | 日本少妇喂奶 | 亚洲jlzzjizz少妇 | 色女人av | 麻豆性生活 | 美国毛片网站 | 中文字幕免费播放 | ass极品国模人体欣赏 | 夜夜嗨视频 | av黄色在线播放 | 欲色综合 | 亚洲AV无码片久久精品 | 综合热久久| 仙踪林久久久久久久999 | 日本人妻不卡一区二区三区中文字幕 | 中国一级片在线观看 | wwww欧美 | 人妻互换一二三区激情视频 | 大粗鳮巴久久久久久久久 | www.youji.com| 在线免费观看一区 | 久久精品一区二区 | 国产成人在线观看免费网站 | 亚洲欧美韩日 | 免费一级suv好看的国产网站 | 岛国av噜噜噜久久久狠狠av | 好吊色这里只有精品 | 粉嫩aⅴ一区二区三区四区五区 | 天天在线免费视频 | 春色网站 | 神马香蕉久久 | 欧美福利片在线观看 | 草草影院在线观看视频 | 天天干天天操天天操 | 大又大又粗又硬又爽少妇毛片 | 日本五十路 | 国产夫妻自拍小视频 | 欧美黄色小说视频 | 一本色道久久88亚洲精品综合 | 日韩欧美电影一区二区三区 | 欧美人成在线 | 欧美大黄视频 | 天堂av资源网 | 精品免费视频一区二区 | 亚洲无人区码一码二码三码 | v天堂中文在线 | av尤物在线 | 加勒比成人在线 | 国产一级二级av | 午夜影院免费看 | 久久这里只有精品6 | 可以免费观看av | 狠狠躁夜夜躁人爽 | 一区二区亚洲视频 | 亚洲欧美成人一区 | 日本三级片在线观看 | 操操色 |