在之前寫過一篇基於python介面自動化測試框架+資料與**分離(高階篇)附原始碼,這篇主要是python介面測試中的資料驅動,簡稱:「ddt」。下面介紹在實際工作中使用jmeter做資料驅動的介面測試。
首先建立csv檔案,該檔案作為測試資料輸入,內容如下:
以上內容儲存退出後也可以用文字編輯器編輯, 注意標點符號。
注意事項:
1、如果斷言內容是中文,執行時出現亂碼,可用txt開啟,另存為,選擇格式:utf-8
2、如果寫了5條用例,發現只執行了3條,可能是因為格式或引號的問題導致,解決方案可參考:
當然,如果你都沒遇到過這兩個問題,可以忽略,繼續往下走。
測試資料已經準備好後,接下來就是引用引數化的問題,開啟jmeter的csv配置:
接下來就是編寫介面測試指令碼,指令碼是用來執行介面測試用例的,如圖:
最外層是迴圈控制器:
第二層是測試用例集:
第三層條件控制器:
第四層就是真正的介面請求:
第五層就是一些斷言和測試結果了:
利用ant構建測試,生成html報告,怎麼安裝和配置ant及build.xml檔案,我在這裡就不說了,網上可以找找教程。
安裝完成後,在jmeter安裝檔案目錄下新建testcase資料夾:
進入後看看:
然後cd 進入到testcase目錄下,輸入ant就可以執行目錄下的測試用例:
進入資料夾檢視:
因為我在buid.xml中配置了兩個報告模板,乙個是彙總,乙個是明細,所以資料夾中有兩份html。
這是請求詳情報告資料:
再看看彙總報告:
當然你還可以生成帶dashboard測試報告,後面有時間介紹。
Python pytest引數化(資料驅動ddt
引數化,就是將測試資料提取出來,與邏輯分離,通過引數傳遞不同的測試資料來驅動用例執行,又稱為資料驅動測試 data drive test,簡寫ddt 比如,有一組測試註冊的測試用例,它們的測試流程相同,只是輸入的測試資料不同,這種情況下,自動化測試就可以將資料與 分離,只編寫1個測試用例方法,以後增...
Jmeter之引數化
jmeter有幾個實現引數化的方法,這次使用的是csv data set config。使用的例子是web trader的login頁面。在tread group 右鍵,新增 配置元件 csv data set config user filename 儲存引數的檔案路徑,建議使用絕對路徑。檔案的字...
Jmeter之引數化
用jmeter測試時包含兩種情況的引數,一種是在url 中,一種是請求中需要傳送的引數 url 中的引數 比如 引數 其中 2010 06 01 jmeter 為url引數。在jmeter的請求中 blog.da fang.com填寫在 伺服器名稱或ip 中 index.php 填寫在 路徑 中 請...