日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Spring Boot從Controller層進行單元測試的實現

瀏覽:109日期:2023-09-08 11:11:07

單元測試是程序員對代碼的自測,一般公司都會嚴格要求單元測試,這是對自己代碼的負責,也是對代碼的敬畏。

一般單元測試都是測試Service層,下面我將演示從Controller層進行單元測試。

無參Controller單元測試示例:

package com.pingan.bloan.genesis.controller.base;import org.junit.After;import org.junit.Before;import org.junit.runner.RunWith;import com.pingan.bloan.genesis.logwrapper.LogWrapper;import org.springframework.boot.test.context.SpringBootTest;import org.springframework.test.context.junit4.SpringRunner;import com.pingan.bloan.genesis.logwrapper.LogWrapperFactory;import org.springframework.test.context.web.WebAppConfiguration;@RunWith(SpringRunner.class)@SpringBootTest@WebAppConfigurationpublic class BaseSpringBootTest { protected LogWrapper logger = LogWrapperFactory.getLogWrapper(BaseSpringBootTest.class); @Before public void init() { logger.info('開始測試...'); } @After public void after() { logger.info('測試結束...'); }}

package com.pingan.bloan.genesis.controller;import org.junit.Test;import org.junit.Before;import org.springframework.test.web.servlet.MockMvc;import org.springframework.test.web.servlet.MvcResult;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.test.web.servlet.setup.MockMvcBuilders;import com.pingan.bloan.genesis.controller.base.BaseSpringBootTest;import org.springframework.test.web.servlet.result.MockMvcResultHandlers;import org.springframework.test.web.servlet.result.MockMvcResultMatchers;import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;/** * DemoController測試 * @author * */public class DemoControllerTest extends BaseSpringBootTest { @Autowired private DemoController demoController; private MockMvc mockMvc; @Before public void setup() { mockMvc = MockMvcBuilders.standaloneSetup(demoController).build(); } @Test public void demo() throws Exception { MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders.get('/demo/demo')) .andExpect(MockMvcResultMatchers.status().isOk()) .andDo(MockMvcResultHandlers.print()) .andReturn(); logger.info(mvcResult.getResponse().getContentAsString()); }}

有參Controller單元測試示例一:

package com.pingan.bloan.genesis.controller;import org.junit.Test;import org.junit.Before;import org.springframework.http.MediaType;import org.springframework.test.web.servlet.MockMvc;import org.springframework.test.web.servlet.MvcResult;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.test.web.servlet.setup.MockMvcBuilders;import com.pingan.bloan.genesis.controller.base.BaseSpringBootTest;import org.springframework.test.web.servlet.result.MockMvcResultHandlers;import org.springframework.test.web.servlet.result.MockMvcResultMatchers;import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;/** * 加解密controller測試 * * @author * */public class MessageEncryptionControllerTest extends BaseSpringBootTest { @Autowired private MessageEncryptionController messageEncryptionController; private MockMvc mockMvc; @Before public void setup() { mockMvc = MockMvcBuilders.standaloneSetup(messageEncryptionController).build(); } /** * 加密測試 * @throws Exception */ @Test public void encryption() throws Exception { MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders.post('/secret/encryption') .accept(MediaType.APPLICATION_JSON).param('originContent', '15221365094')) .andExpect(MockMvcResultMatchers.status().isOk()) .andDo(MockMvcResultHandlers.print()) .andReturn();logger.info(mvcResult.getResponse().getContentAsString()); } /** * 解密測試 * @throws Exception */ @Test public void deciphering() throws Exception { MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders.post('/secret/deciphering') .accept(MediaType.APPLICATION_JSON).param('secretContent', '4BD6EE1A13593F97E6CEA20A2BA9E6E4')) .andExpect(MockMvcResultMatchers.status().isOk()) .andDo(MockMvcResultHandlers.print()) .andReturn(); logger.info(mvcResult.getResponse().getContentAsString()); }}

有參Controller單元測試示例二:

package com.pingan.bloan.genesis.controller;import org.junit.Test;import org.junit.Before;import com.alibaba.fastjson.JSONObject;import org.springframework.http.MediaType;import org.springframework.test.web.servlet.MockMvc;import org.springframework.test.web.servlet.MvcResult;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.test.web.servlet.setup.MockMvcBuilders;import com.pingan.bloan.genesis.controller.base.BaseSpringBootTest;import org.springframework.test.web.servlet.result.MockMvcResultHandlers;import org.springframework.test.web.servlet.result.MockMvcResultMatchers;import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;import com.pingan.bloan.genesis.model.mobiletelephone.MobileTelephoneRequest;/** * 客戶手機掩碼信息加密處理測試 * @author * */public class MobileTelephoneIdempotentControllerTest extends BaseSpringBootTest { @Autowired private MobileTelephoneIdempotentController mobileTelephoneIdempotentController; private MockMvc mockMvc; @Before public void setup() { mockMvc = MockMvcBuilders.standaloneSetup(mobileTelephoneIdempotentController).build(); } /** * 保存加密處理的客戶信息 * @throws Exception */ @Test public void saveCustomerEncryptionMessage() throws Exception { MobileTelephoneRequest request = new MobileTelephoneRequest(); request.setCustomerId('RL20180304000099'); request.setMobileTelephone('18883270484'); request.setCcfMobileTelephone('13904108866');MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders.post('/customerEncryption/save') .contentType(MediaType.APPLICATION_JSON) .content(JSONObject.toJSONString(request))) .andExpect(MockMvcResultMatchers.status().isOk()) .andDo(MockMvcResultHandlers.print()) .andReturn();logger.info(mvcResult.getResponse().getContentAsString()); }}

Suite一次性執行多個單元測試:

package com.pingan.bloan.genesis.controller;import org.junit.runners.Suite;import org.junit.runner.RunWith;/** * 打包測試 * 配置測試類,一次性執行所有配置的測試類 * @author * */@RunWith(Suite.class)@Suite.SuiteClasses({MessageEncryptionControllerTest.class, DemoControllerTest.class})public class SuiteExecuteTests { // 不用寫代碼,只需要注解即可(在SuiteClasses中配置測試類)}

代碼單元測試,讓代碼更加健壯。

到此這篇關于Spring Boot從Controller層進行單元測試的實現的文章就介紹到這了,更多相關Spring Boot Controller單元測試內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Spring
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
精品视频国内| 毛片在线网站| 久久精品国产99久久| 久久久国产精品一区二区中文| bbw在线视频| 一区二区三区四区在线看| 亚州av乱码久久精品蜜桃| 欧美日韩免费看片| 婷婷综合社区| 亚洲毛片在线| 久久精品福利| 日韩一级精品| 青青草国产精品亚洲专区无| 久久99精品久久久久久园产越南| 日韩毛片视频| 在线精品福利| 国产精品毛片久久| 免费成人在线视频观看| 成人精品久久| 亚洲免费影院| 亚洲深夜影院| 亚洲激情偷拍| 国产私拍福利精品视频二区| 精品久久一区| 亚洲精品伊人| 亚洲最新无码中文字幕久久 | 国产精品一站二站| 国产精品亚洲一区二区三区在线观看| 91九色精品国产一区二区| 欧美亚洲tv| 国产精品毛片| 成人看片网站| 麻豆久久久久久| 一区二区三区四区日韩| 私拍精品福利视频在线一区| 免费不卡在线观看| 午夜av成人| 国产美女高潮在线观看| 国产欧美另类| 日韩一二三区在线观看| 国内激情久久| 肉色欧美久久久久久久免费看| 日韩激情综合| 美女国产一区| 亚洲欧洲一区| 亚洲国产专区| 日本高清不卡一区二区三区视频| 91精品日本| 亚洲精品三级| 日本国产亚洲| 蜜臀久久99精品久久久久宅男| 激情六月综合| 蜜桃视频欧美| 日本 国产 欧美色综合| 99日韩精品| 午夜在线精品偷拍| 亚洲一区二区三区中文字幕在线观看| 久久99伊人| 一区二区三区四区精品视频| 亚洲精品影视| 欧美中文一区| 国产精品**亚洲精品| 国产精品白丝av嫩草影院| 国产精品毛片久久久| 国产伦精品一区二区三区视频| 亚洲理论在线| 欧美视频一区| 久久精品资源| 日韩av一级| 亚洲我射av| 精品一区二区三区中文字幕| 在线看片国产福利你懂的| 免费av一区| 国产日产精品_国产精品毛片| 日韩天堂av| 免费在线观看一区二区三区| 日韩va欧美va亚洲va久久| 国产精品magnet| 中文字幕在线高清| 中文在线一区| 日韩精品一区二区三区中文在线| 久久国产精品免费一区二区三区| 精品久久99| 在线精品国产亚洲| 成人一区不卡| 亚洲日韩视频| 97在线精品| 日韩中文字幕亚洲一区二区va在线| 欧美久久香蕉| 久久精品免费一区二区三区| 日韩精品一二三区| se01亚洲视频| 国产欧美日韩在线一区二区| 亚洲高清二区| jizzjizz中国精品麻豆| av不卡在线| 久久久久久色| 亚洲午夜视频| 水蜜桃精品av一区二区| 三级欧美在线一区| 久久久久91| 精品国产欧美| 国产精品mm| 日韩国产欧美在线播放| 免费观看久久av| 欧美香蕉视频| 国产91欧美| 久久香蕉网站| 欧美永久精品| 日韩精品视频一区二区三区| 日韩欧美一区二区三区免费观看| 国产精品99久久久久久董美香| 亚州av一区| 蜜桃视频第一区免费观看| 欧美国产91| 野花国产精品入口| 自拍日韩欧美| 欧美特黄一区| 亚洲激情二区| 夜久久久久久| 亚洲在线成人| 午夜亚洲福利在线老司机| 99视频精品视频高清免费| 亚洲va中文在线播放免费| 999精品在线| 亚洲黄色免费看| 日本国产精品| 国产91久久精品一区二区| 欧美一区二区三区激情视频| 亚洲v在线看| 欧美一区二区三区高清视频| 欧美特黄一区| 蜜桃伊人久久| 男女性色大片免费观看一区二区 | 国户精品久久久久久久久久久不卡| 在线中文字幕播放| 国产一区二区三区91| 日韩欧美网址| 午夜亚洲一区| 国产亚洲电影| 人在线成免费视频| 妖精视频成人观看www| 97精品国产99久久久久久免费| 国产亚洲一卡2卡3卡4卡新区| 国产一区二区三区四区大秀| 久久久久久久久99精品大| 免费在线观看视频一区| 免费精品一区| 91九色精品| 久久福利在线| 9久re热视频在线精品| 美女被久久久| 国产精品久久久久久久久久10秀 | 99国产精品99久久久久久粉嫩| 色8久久久久| 日韩国产综合| 亚洲精品大片| 日韩电影在线视频| 日韩区一区二| 午夜av不卡| 日韩av午夜在线观看| 欧美日韩中文一区二区| 久久国内精品| 在线综合欧美| 国产精品麻豆久久| 久久国产婷婷国产香蕉| 午夜国产精品视频免费体验区| 国产伦理久久久久久妇女| 久久都是精品| 欧洲av一区二区| 麻豆久久久久久| 蜜臀国产一区| 日本欧美在线| 久久亚洲欧美| 日韩免费看片| 欧美国产另类| 国产香蕉精品| 日韩高清电影一区| 99在线观看免费视频精品观看| 欧美aa在线观看| 亚洲黄色中文字幕| 高潮一区二区| 中文字幕高清在线播放| 美女高潮久久久| 国产日产一区| 国产精品日韩精品中文字幕| 亚洲精选成人| 日韩国产91| 奇米狠狠一区二区三区| 一区二区电影| 中文字幕亚洲影视| 蜜桃视频一区二区三区 | 欧美www视频在线观看| 国产精品亚洲人成在99www| 日本色综合中文字幕| 综合一区二区三区| 欧美一区二区三区久久| 久久精品99国产国产精| 久久精品亚洲| 99久久激情|