背景:讓測(cè)試以配置模板的形式芯砸,生成模擬報(bào)文打通測(cè)試流程,產(chǎn)生了mock程序给梅。
mock程序:提供http與kafka的報(bào)文模擬功能假丧。
1.mock報(bào)文模擬器背景及簡(jiǎn)介
1、壓測(cè)动羽、預(yù)演環(huán)境無(wú)需部署真實(shí)應(yīng)用包帚,只需提供mock報(bào)文配合上下游進(jìn)行測(cè)試
2、mock報(bào)文模擬器提供對(duì)http以及kafka mock報(bào)文的功能
根據(jù)不同的測(cè)試需求运吓,生成不同的測(cè)試mock報(bào)文渴邦,幫助測(cè)試人員打通測(cè)試流程
調(diào)用方需要更改原HTTP接口的IP及端口
3、測(cè)試人員需要根據(jù)測(cè)試需求配置相應(yīng)的響應(yīng)模板
模擬器則通過(guò)模板結(jié)合請(qǐng)求數(shù)據(jù)拘哨,合成對(duì)應(yīng)的mock數(shù)據(jù)谋梭,由此模擬生產(chǎn)環(huán)境下的響應(yīng)結(jié)果
2.mock報(bào)文模擬器處理流程
mock報(bào)文模擬器主要包含幾個(gè)部分的內(nèi)容:模擬器監(jiān)聽HTTP端口或監(jiān)聽topic、通過(guò)路由模板mock路由器倦青、通過(guò)響應(yīng)模板mock報(bào)文合成器等內(nèi)容章蚣。
3.mock http服務(wù)
測(cè)試人員對(duì)mock程序接口發(fā)送自定義的請(qǐng)求信息,并通過(guò)配置響應(yīng)報(bào)文的模板姨夹,獲得預(yù)期的http響應(yīng),從而通過(guò)預(yù)期的測(cè)試流程纤垂。
目前瀏覽器僅支持請(qǐng)求體為json、xml以及string格式的請(qǐng)求解析磷账,模擬器將優(yōu)先嘗試解析請(qǐng)求體為json,其次是xml峭沦,解析失敗時(shí)將請(qǐng)求體解釋為普通string。
4.mock kafka服務(wù)
測(cè)試人員在mock程序配置文件中配置需要監(jiān)聽的topic逃糟,以及響應(yīng)topic
在所配置的監(jiān)聽topic中發(fā)送自定義的請(qǐng)求信息吼鱼,并通過(guò)配置響應(yīng)消息的模板蓬豁,可以在相應(yīng)的響應(yīng)topic中獲得預(yù)期的響應(yīng)消息,更改監(jiān)聽topic,需要重啟模擬器程序菇肃。
目前在配置文件中監(jiān)聽與響應(yīng)topic需要成對(duì)配置地粪,也可以配置kafka的響應(yīng)topic的路由,模擬器在配置中無(wú)法找到響應(yīng)topic時(shí)琐谤,將尋找kafka路由獲得響應(yīng)topic