一:Postman中接口請求設置環境變量和全局變量
全局變量和環境變量可以通過Pre-request Script和Tests設置,會在下面測試沙箱和測試斷言中講到。
全局變量的設置:官網參考https://learning.getpostman.com/docs/postman/environments_and_globals/manage_globals/
在這里我選擇的是天氣預報接口(接口文檔官方一直在更新,所以看到跟我說的有啥不同,不要見怪),具體操作如下
1.在瀏覽器上打開天氣預報鏈接,查看接口文檔,獲取請求方法和參數,之后復制url,打開Postman新建Request,填入必要的信息發送請求查看結果。
2.在小眼睛右邊的設置里面添加全局變量名稱和值,變量名稱注意規則,不要取漢字啥的。之后在用參數的時候使用{{參數名}}雙大括號括起來,在寫的過程中postman會自動出來補全讓你選擇,url后面跟的參數也會自動修改。全局變量可以修改值,也可以刪除,還可以下載成json格式的。
環境變量的設置:官網參考https://learning.getpostman.com/docs/postman/environments_and_globals/manage_environments/
依然拿天氣預報接口舉例(由於之前我在測試的過程中添加了環境變量,找了好長時間,才知道是有刪除的,不過不像以前的版本那么明顯),操作如下圖所示:
一組環境可以添加多個變量值,變量值之間不能重復,環境可以刪除、修改、分享、復制、下載、導入等
全局變量和環境變量的區別:全局變量提供了一組變量,這些變量在所有范圍內始終可用。您可以有多個環境,但是一次只能有一個環境在一組全局變量中處於活動狀態,這些變量總是可用的。環境是一組鍵值對。鍵代表變量的名稱。你可以使用數據編輯器修改環境的鍵和值組件。如果你選擇了一組環境,環境里面有跟全局變量相同的變量,值會取環境變量的值,就是環境變量優先級大於全局變量。
二:Postman中測試沙箱和測試斷言實戰
1.測試沙箱簡介:
Postman沙箱(Sandbox)是一個JavaScript執行環境,當您為請求編寫預請求腳本和測試腳本時,編寫的代碼在這個沙箱中進行。Postman測試沙箱其實就是結合了JS腳本完成測試中的功能,在請求發起前后實現部分測試操作。
測試沙箱常用功能:(1).Pre-request Script 在請求前,腳本設置前置操作如設置變量等。(2).Tests在請求后對狀態碼、響應頭、響應正文等信息進行斷言操作。
2測試斷言簡介:
一般來說我們需要對測試結果進行校驗,判斷結果是否符合我們的預期,也就是斷言。這個測試斷言屬於測試沙箱功能的一部分。在接口測試中一般會根據響應狀態碼或者響應后的數據來進行斷言。
3.常用的測試腳本(右邊快捷中常用的測試語句,用到console.log()語句的時候,在發送之前先打開控制台,快捷鍵是crtl+Alt+C)
(1).Pre-request Script中常用的測試腳本有設置環境和全局變量,獲取環境和全局變量等。在測試沙箱中,接口請求如果set了環境變量,則優先級大於send上方選中的一組環境。
(2).Tests中用到的測試腳本較多。常用的如下圖所示:
對於復雜數組的取值看下圖操作:
三:Postman中測試集運行和導入數據文件
在前面的時候,我們提到了測試集的一些內容,測試集的創建方法:1.直接將request保存在Collections中;2.先創建Collections,然后添加request;3.導入別人給的Collections文件。Collections可以直接運行所有的request,也可以用csv或者json文件進行導入多條測試數據。Collections runner運行在一個獨立的面板中,可以設置環境,運行次數,從文件獲取變量等。
csv文件可以通過excel文件進行轉換,轉換完之后可以通過notepad++修改編碼格式為:utf-8,否則會在運行測試集的過程中選擇csv文件會出現亂碼,文件中第一行必須是接口請求使用的變量。在測試沙箱中,參數的獲取用 data.name(常用寫法)或者 data['name']的形式來進行讀取。如果測試集選擇了csv文件或者json文件運行,不需要再選擇一組環境值。