Postman csv Pre-request script 壓測 api 測試

Postman測試多筆動起來

李佳樺 2019/11/28 10:00:00
8005

前言

POSTMAN 模擬各種 HTTP requests,已是大家都知道的測試API的好用工具。

剛好要測試讀CSV檔,作動態塞值的測試,之前玩過用jmeter作這樣的測試,

這次就試試用POSTMAN來作,藉此更了解這工具,讓工作可以更自動化。

此篇文章為稍微進階的應用,所以就不再針對一些基本的操作功能作介紹。

 

測試情境

呼叫某一API,傳入需動態取值的參數:

♦ msg:讀CSV檔案取得

sessionId:寫pre-request script 亂數產出值後,放置環境變數SessionId

customer_msg_id:寫pre-request script 取得時間參數後,放置環境變數timestamp

 

開始前準備

首先先去下載:https://www.getpostman.com/downloads/

身為一位工程師,想必都已擁有這好用測試工具,就不再多說怎下載安裝了,還沒有的快去裝吧!

 

實作開始

步驟1:開打POSTMAN,新增一個Collection,DemoCsv

 

步驟2:點選Add requests新增一http request

步驟3:輸入request name:testCsv和選擇collection:DemoCsv後儲存

步驟4:點選新增的testCsv

[1] method選擇post及輸入API網址

[2] 因會使用到環境變數,此選Local

[3] 撰寫pre-request Script動態產出sessionId、timestamp放到環境變數。

步驟5:輸入request body,此API需傳入json 字串,參數由環境變數取得。

放入參數寫法為{{定義的變數名稱}}

步驟6:執行 Collection Runner 點選[1]Runner或者點選[1.1]滑出選單後選點[1.2]Run

步驟7:設定csv來源檔

[1] 先選Environment同步驟4的第2點為Local

[2] Iteration為要讀取csv的內容數量,例如:輸入3則會跑三筆資料。

[3] 選擇來源csv檔,csv檔案內容可以按Preview查看,第一列為變數名稱,此例為:message。

[4] 點選「Run DemoCsv」

[5] 可以看到執行結果

 

總結

最近工作上在測API時,遇到例如需先取得Token才能呼叫API,且如又需針對request body內容壓碼成signCode,

整個測試流程都透過寫test和pre-request script,作到自動化測試。

透過強大測試工具POSTMAN輔助,更加進階去了解它的功能,可以讓測試工作更加自動化更有效率。

 

參考資料

https://blog.getpostman.com/2014/10/28/using-csv-and-json-files-in-the-postman-collection-runner/

https://dotblogs.com.tw/im_sqz777/2018/09/06/222529

李佳樺