httprunner—項目組織&用例組織、分層

1.快速創建項目

這裏類似django裏面可以快速創建一個項目目錄

可以通過命令:

hrun --startproject [項目名稱]

 image.png

 

2.項目組織

 

快速創建的項目目錄如上圖所示:

yml/json文件:測試用例文件

debugtalk.py:存儲項目中邏輯運算輔助函數

.env:存儲項目環境變量,通常用於存儲項目敏感信息

.csv:項目數據文件,用於進行數據驅動

reports:默認生成測試報告的存儲文件夾

 

3.用例組織

 

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

測試用例(testcase):對應一個或者多個json\yml文件,包含一個或多個測試步驟

測試步驟(testsetp):對應一個json\yml文件的一個test,描述單次接口測試的全部內容,包括:

發起請求、解析響應結果、驗證結果等

image.png

4.用例分層

 

用例分層邏輯圖:

image.png

1.接口定義及引用

 

爲了更好的對接口描述進行管理,使用獨立的文件對接口描述進行存儲,即每個文件對應一個接口描述,

其中,定義描述的內容包括:name、variables、request、base_url、validate等。例如

 

name:測試用例的名稱,在測試報告中作爲標題

request:request的公共參數,作用域爲整個用例,常用參數包含base_url、headers

json:post請求傳參形式,如果爲get請求則把json替換爲 params

method:http請求方法

verify:忽略證書驗證

validate:測試用例中定義的結果校驗項,僅對當前用例做校驗,更多涉及validate請點擊validate校驗詳解

# api/Channel/taskList.yml接口定義文件

base_url: ${ENV(HOME_BASE_URL)}
name: taskList
request:
  headers:
    x-rp-token: ${ENV(LOGIN_TOKEN)}
  json: $query
  method: POST
  url: /api/workbench/channel/task/taskList
  verify: false
validate:
- eq:
  - status_code
  - 200
- ne:
  - content.errormsg
  - 系統錯誤

 

2.測試用例

 

config:作爲整個測試用例的全局配置項,作用域爲整個測試用例

variables:定義的全局變量,作用域爲整個用例

teststeps:測試步驟,引用了上文tasklist.yml 文件的接口定義

#taskList測試用例文件

config:
  name: 獲取任務列表
  variables:
    query:
      pageNo: 1
      pageSize: 10
      relRabbitUserIds: ENV{WORKWECHAT_USERID}
teststeps:
- api: api/Channel/taskList.yml
  name: 獲取任務列表

 

3.測試用例集

 

testcases:測試用例集,存放一個或多個測試用例

create user:測試用例集名稱

testcase:測試用例

parameters:全局參數,用於實現數據化驅動,作用域爲整個用例

# testsuites文件

config:
    name: testcase description

testcases:
    create user:
        testcase: demo-quickstart-0.yml
        parameters:
            user_id: [1132,1131,1130]

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章