用了10年P(guān)ostman,沒想到它的Mock功能也如此強(qiáng)大

最近在做一些app,前后端分離的開發(fā)模式是必須的。一直用的python flask做后端的快速POC,python本身就是一門膠水語言,開發(fā)起來方便快捷,而flask又是一個極簡的webserver框架(比Django簡潔)。但在這里推薦的是使用Postman,避免同時打開pycharm和webstorm,同時對于不懂python的同學(xué)也是福音。

在整個開發(fā)過程中,前端或后端的延遲可能會阻礙相關(guān)團(tuán)隊有效地完成工作。一些后端的API工程師已經(jīng)開始使用Postman去測試后端endpoint,而不依賴于前端UI來模擬API請求。

現(xiàn)在,Postman開發(fā)了一種新的模擬服務(wù),使團(tuán)隊能夠模擬后端服務(wù)器。前端開發(fā)人員可以模擬Postman collection(和相應(yīng)的環(huán)境)中的每個endpoint,以查看潛在的響應(yīng),而無需實際啟動后端

前端,后端和API團(tuán)隊現(xiàn)在可以并行工作,從而釋放之前因這些依賴性而延遲的開發(fā)人員。現(xiàn)在,讓我們看看Postman是如何模擬后端的。

01

設(shè)置一個用于模擬的集合

這里,前端開發(fā)得先知道有哪些url是用于和后端通信的。

在這個例子中,我們有一個?Tesk Mock?的集合,并且配置了同名的環(huán)境的Tesk Mock?。集合中,有兩個request:mock_r_1?和?mock_r_2,一個GET,一個POST,對應(yīng)的path分別是/test,/tp。

接下來,讓我們設(shè)置一個 mock server 并且為每一個endpoint模擬一條response。

注意:這兩個是必須的步驟,沒有必然的先后順序。你可以先mock response,再創(chuàng)建mock server,也可以先創(chuàng)建mock server,再mock response。這里,我們先創(chuàng)建一個mock server。

02

創(chuàng)建mock server

進(jìn)入左邊的導(dǎo)航欄,選擇我們的Test mock集合,會出現(xiàn)一個三角符號(如下圖中Postman Echo集合旁邊的符號),點(diǎn)擊之后,三角符號會反向(如下圖中Test mock集合旁邊的符號),并且出現(xiàn)針對該集合的配置。這里有一個Mocks,請選擇之:

接下來的步驟很簡單,一路點(diǎn)擊創(chuàng)建即可:

最后一個步驟,我們得到了一個mock server的地址,也就是說,這個mock server是postman在自己的服務(wù)器上為我們創(chuàng)建的,無論我們是否打開postman,我們都可以直接用這個地址來訪問mock的API。

別擔(dān)心你會忘掉這個地址,因為它會自動保存在collection的配置中,按照我們剛才是的步驟,回到這個集合中,在Mocks下面,你會看到你創(chuàng)建的server:

點(diǎn)擊圖中的圖標(biāo),會直接復(fù)制到粘貼板上。然后你可以將其保存在Tesk mock環(huán)境的變量中。也可以直接使用。

但這時,你擁有的只是一個mock server,上面沒有任何服務(wù)可用。你需要在這個server上注冊endpoint,并且mock對應(yīng)的response,才可以使之服務(wù)于你。

03

mock每個endpoint的response

這里的步驟也不復(fù)雜,針對每個endpoint,或者說是host下面的path,你需要自己提供mock data。在postman里面,這個概念叫做example,即每一個你需要訪問的路徑/接口/資源,都可以提供一個栗子,即便你連不上,你也可以通過例子知道該路徑/接口/資源大概會返回什么樣的response。這個example不單單是為了mock而做的,因為postman可以生成API文檔,在生成文檔的時候,這個例子也會直接放在文檔里,方便查閱文檔的人了解接口。

具體創(chuàng)建步驟:

打開collection,選擇request,為request創(chuàng)建一個example,保存example

這里需要注意的是:

每個request都可以有多個example

每個example創(chuàng)建之后都可以修改

Mock server只會采用最后創(chuàng)建的example

04

使用mock server

在前面的步驟中,我們已經(jīng)創(chuàng)建了mock server,并且為每個end point至少創(chuàng)建了一個example。這時,mock server就不再只是一個空殼了,它會為每一創(chuàng)建了example的endpoint提供mock服務(wù),mock的內(nèi)容就是最后創(chuàng)建的example的內(nèi)容。

我們可以直接在postman上測試:

也可直接在瀏覽器上驗證:

注意:在驗證第二個endpoint的時候,失敗的原因是,endpoint是POST權(quán)限的,但瀏覽器默認(rèn)是用GET去訪問。

05

對開發(fā)模式的啟發(fā)

使用postman,前端團(tuán)隊和后端團(tuán)隊完全可以在約定了API接口之后,各自完成開發(fā),而不需要收到對方進(jìn)度的影響,因此在真正開始開發(fā)工作之前,接口、數(shù)據(jù)格式的約定變得尤為重要,當(dāng)然,因為postman是支持組開發(fā)的,即便接口,數(shù)據(jù)有變化,也可通過share collection的方式,及時同步collection下request的變化,并立即反應(yīng)到mock server上。并且,因為mock server是掛載postman的服務(wù)器上,只要有網(wǎng)絡(luò),前端是可以在家辦公,而不用受制于內(nèi)網(wǎng)限制的。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,818評論 6 531
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 98,185評論 3 414
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 175,656評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,647評論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 71,446評論 6 405
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 54,951評論 1 321
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,041評論 3 440
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 42,189評論 0 287
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 48,718評論 1 333
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 40,602評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 42,800評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,316評論 5 358
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 44,045評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,419評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,671評論 1 281
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,420評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 47,755評論 2 371

推薦閱讀更多精彩內(nèi)容