從0到1學(xué)會使用SpringBoot 搭建mock Server

Mock Server

做過接口測試的同學(xué)一定聽說過mock Server,大家會覺得其很神秘,很高大上!mock Server出現(xiàn)的原因是現(xiàn)今的業(yè)務(wù)系統(tǒng)很少有孤立存在的,它們或多或少需要使用兄弟團(tuán)隊(duì)或是其他公司提供的服務(wù),這給我們的聯(lián)調(diào)和測試造成了麻煩。于是就有了解決方案——搭建一個(gè)臨時(shí)的server,模擬那些服務(wù),提供數(shù)據(jù)進(jìn)行聯(lián)調(diào)和測試。下圖很好的解釋了什么是Mock server:

Springboot介紹

Spring Boot 是由 Pivotal 團(tuán)隊(duì)提供的全新框架,其設(shè)計(jì)目的是用來簡化新 Spring 應(yīng)用的初始搭建以及開發(fā)過程。該框架使用了特定的方式來進(jìn)行配置,從而使開發(fā)人員不再需要定義樣板化的配置。Spring boot是一個(gè)微服務(wù)框架,是Spring本身的擴(kuò)展,延續(xù)了spring框架的核心思想IOC和AOP,他使得測試和部署更加方便。

Springboot環(huán)境配置

使用IntelliJ Idea,在應(yīng)用商店下載插件Spring Assistant,如下圖所示:

安裝完成后,重啟IntelliJ。

使用Spring Assistant來創(chuàng)建Spring boot工程

點(diǎn)擊Next,通過Maven來創(chuàng)建Spring boot工程,如下圖所示


選擇Spring Web項(xiàng)目,如下圖所示:


設(shè)置工程名稱,點(diǎn)擊Finish按鈕,完成工程創(chuàng)建。

接下來,maven會自動下載spring boot所需相關(guān)jar包。我們會在工程中看到,自動生成了一個(gè)SpringDemoApplication類,這個(gè)就是Springboot的入口類

import org.springframework.boot.SpringApplication;

import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication

public class SpringDemoApplication {

public static void main(String[] args) {

????? SpringApplication.run(SpringDemoApplication.class, args);

?? }

}

Controller實(shí)現(xiàn)

Controller的主要作用就是解析http請求,調(diào)用后端服務(wù),并

代碼如下:

@RestController

public class HelloWorld {

@RequestMapping("/")

public String helloworld(){

??????? return "Hello World ";

??? }

@RequestMapping("/login")?

?public String login(@RequestParam(value="name",required=true) String name, @RequestParam(value="password",required=true) String pwd){

??????????? return name+" "+pwd;

??? }

}

其中方法helloworld用來處理默認(rèn)請求http://localhost:8080/;

方法login用來處理帶參數(shù)的請求,并把參數(shù)name和password返回。

在SpringDemoApplication類中啟動Spring boot服務(wù),如下圖所示:


出現(xiàn)下圖信息,則證明服務(wù)啟動成功!



在瀏覽器中輸入http://localhost:8080/,顯示如下:


在瀏覽器中輸入http://localhost:8080/login?name=kevin&&password=123456,顯示如下:


微服務(wù)獨(dú)立部署

我們也可以把微服務(wù)通過maven打成jar包進(jìn)行獨(dú)立部署,具體方法如下:

打包成功后會在工程的target目錄下生成jar文件demo-0.0.1-SNAPSHOT.jar,進(jìn)入該目錄下,通過java命令行的方式啟動該服務(wù),具體命令如下:

java –jar demo-0.0.1-SNAPSHOT.jar

編寫自己的mock服務(wù)

對前面講過的方法login稍加改進(jìn),結(jié)合我們自己具體的實(shí)際業(yè)務(wù),就可以編寫專屬我們自己的mock服務(wù)了!

@RequestMapping("/login")?

?public String login(@RequestParam(value="name",required=true) String name, @RequestParam(value="password",required=true) String pwd){

?????????? return name+" "+pwd;

??? }

}

具體思路如下:

@RequestMapping("/service1")?

?public String service1(@RequestParam(value="param1",required=true) String param1, @RequestParam(value="param2",required=false) String param2,…){

?????????? //解析請求參數(shù),給出不同的返回值

??????????return 返回值

??? }

}

原創(chuàng)不易,如果文章幫到了你,歡迎點(diǎn)贊轉(zhuǎn)發(fā),讓更多的朋友受益!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容