日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

转为yaml python_python 如何使用HttpRunner做接口自动化测试

發(fā)布時(shí)間:2025/3/12 python 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 转为yaml python_python 如何使用HttpRunner做接口自动化测试 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

作者:星安果

來(lái)源:AirPython

1. 前言

原始測(cè)試金子塔包含 3 層,分別是:UI 自動(dòng)化測(cè)試、接口服務(wù)測(cè)試、單元測(cè)試

其中,

單元測(cè)試是對(duì)軟件的最小可測(cè)試單元進(jìn)行檢查和驗(yàn)證,也是產(chǎn)生效率最大的一項(xiàng)測(cè)試

接口服務(wù)測(cè)試分為模塊接口測(cè)試和協(xié)議接口測(cè)試

UI 測(cè)試主要是為了取代人力操作,通過 UI 自動(dòng)化去模擬操作,降低回歸測(cè)試的成本

考慮到投入產(chǎn)出率,大部分企業(yè)都會(huì)將測(cè)試重點(diǎn)放在接口自動(dòng)化測(cè)試這一項(xiàng)上

接口自動(dòng)化主流方案包含:python + Pytest/Unittest、Java + TestNG、Postman、HttpRunner、Postman、Jmeter、RobotFramework 等

本篇文章將和大家一起聊聊 HttpRunner 做接口自動(dòng)化的流程

2.介紹及安裝

HttpRunner 是一款完全由 Python 語(yǔ)言編寫的測(cè)試框架,并且簡(jiǎn)單、優(yōu)雅、功能強(qiáng)大,同時(shí)支持 HTTP 和 HTTPS

HttpRunner 主要包含下列特征:

  • 繼承 Requests 庫(kù)的全部特性,輕松實(shí)現(xiàn) HTTP(S) 的各種測(cè)試需求
  • 以 YAML 和 JSON 定義測(cè)試用例,通過 pytest 去運(yùn)行
  • 基于 HAR 文件,實(shí)現(xiàn)接口的錄制及用例的生成功能
  • 支持 variables、extract、validate、hook 等關(guān)鍵字,可以創(chuàng)建復(fù)雜的測(cè)試場(chǎng)景
  • 借助輔助插件 debugtalk.py,在測(cè)試腳本中輕松實(shí)現(xiàn)復(fù)雜的動(dòng)態(tài)計(jì)算邏輯
  • 集成 jmespath,方便提取變量、驗(yàn)證 JSON 響應(yīng)
  • 集成 pytest,支持大量的插件
  • 集成 allure 生成強(qiáng)大的測(cè)試報(bào)告
  • 集成 locust,非常方便做性能測(cè)試
  • 執(zhí)行方式采用 CLI 調(diào)用形式,可以和 Jenkins 等持續(xù)集成工具完美結(jié)合

使用 pip 安裝 HttpRunner 穩(wěn)定版本

# 安裝 HttpRunner 穩(wěn)定版本 pip3 install httprunner

需要指出的是,HttpRunner V3 版本對(duì)比 V2 版本進(jìn)行了大量?jī)?yōu)化,特別是測(cè)試用例的表現(xiàn)形式,強(qiáng)烈建議安裝 V3 版本

3.常見命令

安裝完 HttpRunner 之后,就可以使用下面幾個(gè)命令了

1、hrun

HttpRunner 最主要的命令,主要作用是運(yùn)行 Py/YAML/JSON 格式的測(cè)試用例

2、hmake

將 YAML/JSON 格式的測(cè)試用例轉(zhuǎn)換為 Python 文件

ps:HttpRunner V3 以 Python 文件保存測(cè)試用例,V2 之前是以 JSON/YAML 格式保存測(cè)試用例

3、har2case

har2case 作用是將 HAR 格式的請(qǐng)求文件轉(zhuǎn)為 YAML/JSON/Py 格式的測(cè)試用例

ps:一般網(wǎng)絡(luò)請(qǐng)求都可以直接以 AHR 格式保存到本地

4、locusts

HttpRunner 集成了 locusts 命令,可以利用它直接進(jìn)行性能測(cè)試

5、其他命令

另外,通過 httprunner -h 命令可以查看幫助;使用 httprunner -V 命令可以查看 HttpRunner 的版本信息

4.小試牛刀

先通過一個(gè)簡(jiǎn)單的接口聊聊 HttpRunner 的使用步驟

目標(biāo)接口 - GET:

https://postman-echo.com/get?foo1=bar1

第一步:抓包,保存為 HAR 文件

打開 Charles 或 Fiddler,配置 Chrome 瀏覽器的代理, 使 Charles 可以對(duì)瀏覽器進(jìn)行抓包

使用 Chrome 訪問這個(gè)接口地址,模擬一次請(qǐng)求,然后在 Charles 中找到對(duì)應(yīng)的請(qǐng)求,右鍵保存為 HAR 文件

第二步:轉(zhuǎn)為測(cè)試用例

使用 har2case 命令將 HAR 文件轉(zhuǎn)換為測(cè)試用例,V3 版本默認(rèn)生成測(cè)試用例格式為 Py 文件

查看測(cè)試用例后發(fā)現(xiàn),HttpRunner 自動(dòng)生成的測(cè)試用例結(jié)構(gòu)十分清晰,二次修改也非常方便

第三步,運(yùn)行測(cè)試用例

使用 hrun 命令運(yùn)行測(cè)試用例,另外,加上 --html 參數(shù),可以在本地生成測(cè)試報(bào)告

# 生成測(cè)試報(bào)告 hrun demo_test.py --html=report.html

打開測(cè)試報(bào)告,可以查看測(cè)試用例的執(zhí)行結(jié)果及日志

5.腳手架

HttpRunner 同樣提供了腳手架,方便我們快速創(chuàng)建標(biāo)準(zhǔn)化項(xiàng)目

# 使用腳手架創(chuàng)建一個(gè)項(xiàng)目 httprunner startproject demo

生成項(xiàng)目的目錄結(jié)果如下:

其中,

1、debugtalk.py

一般用于自定義 Python 函數(shù),方便測(cè)試用例調(diào)用

比如:某個(gè)請(qǐng)求參數(shù)需要通過一段加密邏輯生成,這時(shí)可以自定義一個(gè)函數(shù)寫在 debugtalk.py 文件中

2、har

從抓包工具、Postman、瀏覽器保存的網(wǎng)絡(luò)請(qǐng)求

3、reports

生成測(cè)試報(bào)告的目錄

需要指出的是,除了使用自帶的 pytest-html 插件生成測(cè)試報(bào)告,HttpRunner 還可以通過 allure 生成功能更加強(qiáng)大的測(cè)試報(bào)告

4、testcases

用于放置測(cè)試用例

使用 hrun 命令可以直接運(yùn)行腳手架項(xiàng)目

# 運(yùn)行腳手架項(xiàng)目 # hrun 項(xiàng)目名稱 hrun demo

6.最后

受限于篇幅,上面僅僅介紹了 HttpRunner 最基本的使用方法

總結(jié)

以上是生活随笔為你收集整理的转为yaml python_python 如何使用HttpRunner做接口自动化测试的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。