上次的例子中圃泡,我們request url里面的主機(jī)地址我們都是用的localhost
后添,表示本機(jī)愤钾,因為我們的服務(wù)器程序就運(yùn)行在本機(jī)上触创。而實(shí)際的測試過程中坎藐,服務(wù)器地址往往并非是在本機(jī)上的。為了能適應(yīng)各種測試環(huán)境,我們通常要使用變量
7.4.1什么是Postman中的變量
和其他變成語言一樣岩馍,Postman中的變量就是一個字符串標(biāo)識碉咆,用來對應(yīng)一個值(在Postman中通常是一個字符串)。如果Postman的API中多處使用某個字符串的時候蛀恩,我們可以使用變量代表它疫铜。這樣另外一個測試環(huán)境中該值需要修改,我們只要修改這個變量的定義一個地方就可以了双谆。
7.4.2 Postman 環(huán)境里面的變量
Postman有個概念叫環(huán)境壳咕,一個環(huán)境里面可以配置多個變量。這些變量通暢是針對某個測試環(huán)境而言的顽馋。比如服務(wù)器地址谓厘,端口號等。如果我們實(shí)際有多套測試環(huán)境(實(shí)驗室中有多態(tài)測試服務(wù)器寸谜,作為測試環(huán)境)竟稳,可以為這些不同的測試環(huán)境,設(shè)置相應(yīng)的Postman環(huán)境熊痴。這樣我們從一個環(huán)境切換到另一個環(huán)境的時候他爸,只需要選擇不同的Postman環(huán)境就可以了。當(dāng)然愁拭,我們Postman API中需要使用這些環(huán)境里面設(shè)置的變量讲逛,這樣環(huán)境切換后,就自動使用新的環(huán)境中的變量的值了岭埠。
那我們怎么定義不同的環(huán)境盏混。怎么定義環(huán)境中的變量,又怎么樣API使用環(huán)境變量的的變量呢惜论?舉個例子许赃,我們?nèi)绻盍藘商诇y試環(huán)境,里面各自運(yùn)行了我們的教學(xué)管理系統(tǒng)馆类。一臺在本機(jī)上混聊,一臺在實(shí)驗室里面,ip地址為192.168.0.100乾巧,我們可以創(chuàng)建兩套Postman環(huán)境句喜,里面都設(shè)置一個名為server的變量。
在Postman中創(chuàng)建環(huán)境變量如下沟于,點(diǎn)擊界面右上角的這個齒輪圖標(biāo)咳胃,選擇Manage Environments
在彈出的對話框中,點(diǎn)擊Add按鈕旷太。在如下所示的對話框中填入環(huán)境名稱展懈,和這個環(huán)境中所包含的變量销睁。server表示API服務(wù)器的主機(jī)名或者IP地址
這里面有兩個值,我們實(shí)際上使用的是當(dāng)前值存崖,這個初始值是當(dāng)你和主源共享的時候(我們之前講過Postman可以分享給其他的成員)冻记,分享的時候它使用的初始值。創(chuàng)建完成后来惧,點(diǎn)擊右下角Add按鈕冗栗,確定添加,這樣一套環(huán)境就創(chuàng)建了违寞。我們?nèi)绶ㄅ谥普曷鳎趧?chuàng)建一套環(huán)境對應(yīng)實(shí)驗室的那臺服務(wù)器偶房,如下所示
這樣我們就有了兩套環(huán)境趁曼,一套叫l(wèi)ocal,另一套叫sever1
現(xiàn)在我們需要到我們的Postman API請求中棕洋,將所有請求的url中的主機(jī)名挡闰,替換為變量名為server。
我們目前開發(fā)了4個API掰盘,全部需要替換摄悯。
替換成什么樣子呢?像下面這樣
就是講原來的localhost
替換為{{server}}
愧捕。這里面用雙花括號將變量名括起來奢驯。雙花括號就表示里面是一個變量。當(dāng)我們進(jìn)行測試的時候次绘。如果我們現(xiàn)在使用本機(jī)的API服務(wù)瘪阁,就在這里選擇local
環(huán)境,
當(dāng)我們選擇完環(huán)境之后邮偎,把鼠標(biāo)放在變量名的上面管跺,他就會顯示當(dāng)前環(huán)境變量里面的值,主要看CURRENT
如果是使用的實(shí)驗室的那臺機(jī)器禾进,就選擇server1環(huán)境豁跑。Postman會使用不同環(huán)境里面的變量對應(yīng)的值。試試看泻云,點(diǎn)擊發(fā)送 按鈕艇拍,是不是一樣可以發(fā)送請求?
7.4.3 Postman 全局里面的變量
有的時候宠纯,有些變量卸夕,我們可能并不想配置到很多套環(huán)境里面。因為基本上這就是一個固定的值征椒,要修改的話娇哆,所有的環(huán)境里面都需要修改。比如,我們要添加的課程信息碍讨。
{
"name":"初中化學(xué)",
"desc":"初中化學(xué)課程",
"display_idx":"4"
}
這時候我們可以創(chuàng)建一個全局變量治力。全局變量和我們選擇的環(huán)境無關(guān)。點(diǎn)擊界面右上角的這個齒輪圖標(biāo)勃黍,選擇Manage Environments
在彈出對話框中宵统,點(diǎn)擊Globals
按鈕,如下所示
然后加入全局變量名course_add其內(nèi)容如下所示
然后我們在打開添加課程的API請求覆获,修改其內(nèi)容如下:
這樣马澈,就將data參數(shù)的值用變量取代了。試試看弄息,點(diǎn)擊發(fā)送按鈕痊班,是不是一樣可以發(fā)送請求。