HttpRunner接口自動化測試框架--3.用例編寫


HttpRunner 的測試用例支持兩種文件格式:YAML 和 JSON。JSON 和 YAML 格式的測試用例完全等價,包含的信息內容也完全相同。

在 HttpRunner 中,測試用例組織主要基於三個概念:

測試用例集(testsuite):對應一個文件夾,包含單個或多個測試用例(YAML/JSON)文件

測試用例(testcase):對應一個 YAML/JSON 文件,包含單個或多個測試步驟

測試步驟(teststep):對應 YAML/JSON 文件中的一個 teststep,描述單次接口測試的全部內容,包括發起接口請求、解析響應結果、校驗結果等。

本篇內容主要描述testcase 和 teststep 的編寫格式和內容。

1.在一個測試用例文件中包含了兩層變量空間作用域(本篇用yaml文件舉例)

config:作為整個測試用例的全局配置項,作用域為整個測試用例;test:測試步驟的變量空間,會繼承或覆蓋 config 中定義的內容;

 2.config中的參數詳情

config 參數詳情
參數 是否必須 格式 詳情

name

YES string 測試用例的名稱,在測試報告中將作為標題
variables NO list of dict 定義的全局變量,作用域為整個用例
parameters NO list of dict 全局參數,用於實現數據化驅動,作用域為整個用例
request NO dict request 的公共參數,作用域為整個用例;常用參數包括 base_url 和 headers
request中參數詳情
參數   是否必須 格式 詳情
base_url NO String 測試用例請求 URL 的公共 host,指定該參數后,test 中的 url 可以只描述 path 部分
headers NO dict request 中 headers 的公共參數,作用域為整個用例
output NO list 整個用例輸出的參數列表,可輸出的參數包括公共的 variable 和 extract 的參數; 在 log-level 為 debug 模式下,會在 terminal 中打印出參數內容

3.測試步驟(teststeps)參數詳情

teststeps參數詳情
參數  是否必須 格式 詳情
name YES String 測試步驟的名稱,在測試報告中將作為測試步驟的名稱
request YES dict HTTP 請求的詳細內容;可用參數詳見 python-requests 官方文檔
variables NO list of dict 測試步驟中定義的變量,作用域為當前測試步驟
extract NO list 從當前 HTTP 請求的響應結果中提取參數,並保存到參數變量中(例如token),后續測試用例可通過$token的形式進行引用
validate NO list 測試用例中定義的結果校驗項,作用域為當前測試用例,用於實現對當前測試用例運行結果的校驗

 times NO int 重復執行測試用例的次數
setup_hooks NO list 在 HTTP 請求發送前執行 hook 函數,主要用於准備工作
teardown_hooks NO list 在 HTTP 請求發送后執行 hook 函數,主要用戶測試后的清理工作


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM