1. Python 如何使用 HttpRunner 做接口自動化測試

        共 2653字,需瀏覽 6分鐘

         ·

        2021-02-28 19:47


        Python實戰(zhàn)社群

        Java實戰(zhàn)社群

        長按識別下方二維碼,按需求添加

        掃碼關注添加客服

        進Python社群▲

        掃碼關注添加客服

        進Java社群


        作者丨星安果

        來源丨AirPython


        1. 前言

        原始測試金子塔包含 3 層,分別是:UI 自動化測試、接口服務測試、單元測試

        其中,

        單元測試是對軟件的最小可測試單元進行檢查和驗證,也是產(chǎn)生效率最大的一項測試

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

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

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

        接口自動化主流方案包含Python + Pytest/Unittest、Java + TestNG、Postman、HttpRunner、Postman、Jmeter、RobotFramework 等

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

        2.介紹及安裝

        HttpRunner 是一款完全由 Python 語言編寫的測試框架,并且簡單、優(yōu)雅、功能強大,同時支持 HTTP 和 HTTPS

        HttpRunner 主要包含下列特征:

        • 繼承 Requests 庫的全部特性,輕松實現(xiàn) HTTP(S) 的各種測試需求

        • 以 YAML 和 JSON 定義測試用例,通過 pytest 去運行

        • 基于 HAR 文件,實現(xiàn)接口的錄制及用例的生成功能

        • 支持 variables、extract、validate、hook 等關鍵字,可以創(chuàng)建復雜的測試場景

        • 借助輔助插件 debugtalk.py,在測試腳本中輕松實現(xiàn)復雜的動態(tài)計算邏輯

        • 集成 jmespath,方便提取變量、驗證 JSON 響應

        • 集成 pytest,支持大量的插件

        • 集成 allure 生成強大的測試報告

        • 集成 locust,非常方便做性能測試

        • 執(zhí)行方式采用 CLI 調(diào)用形式,可以和 Jenkins 等持續(xù)集成工具完美結合

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

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

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

        3.常見命令

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

        1、hrun

        HttpRunner 最主要的命令,主要作用是運行 Py/YAML/JSON 格式的測試用例

        2、hmake

        將 YAML/JSON 格式的測試用例轉換為 Python 文件

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

        3、har2case

        har2case 作用是將 HAR 格式的請求文件轉為 YAML/JSON/Py 格式的測試用例

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

        4、locusts

        HttpRunner 集成了 locusts 命令,可以利用它直接進行性能測試

        5、其他命令

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

        4.小試牛刀

        先通過一個簡單的接口聊聊 HttpRunner 的使用步驟

        目標接口 - GET:

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

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

        打開 Charles 或 Fiddler,配置 Chrome 瀏覽器的代理, 使 Charles 可以對瀏覽器進行抓包

        使用 Chrome 訪問這個接口地址,模擬一次請求,然后在 Charles 中找到對應的請求,右鍵保存為 HAR 文件

        第二步:轉為測試用例

        使用 har2case 命令將 HAR 文件轉換為測試用例,V3 版本默認生成測試用例格式為 Py 文件

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

        第三步,運行測試用例

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

        # 生成測試報告
        hrun demo_test.py --html=report.html

        打開測試報告,可以查看測試用例的執(zhí)行結果及日志

        5.腳手架

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

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

        生成項目的目錄結果如下:

        其中,

        1、debugtalk.py

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

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

        2、har

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

        3、reports

        生成測試報告的目錄

        需要指出的是,除了使用自帶的 pytest-html 插件生成測試報告,HttpRunner 還可以通過 allure 生成功能更加強大的測試報告

        4、testcases

        用于放置測試用例

        使用 hrun 命令可以直接運行腳手架項目

        # 運行腳手架項目
        # hrun 項目名稱
        hrun demo

        6.最后

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

        程序員專欄
         掃碼關注填加客服 
        長按識別下方二維碼進群

        近期精彩內(nèi)容推薦:  

         10年巨變,我女神成了我老婆...

         一個程序員的水平能差到什么程度?

         在一個公司死磕5-10年的程序員都怎么樣了?

         史上最污技術解讀,我竟然秒懂了




        在看點這里好文分享給更多人↓↓

        瀏覽 27
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
        評論
        圖片
        表情
        推薦
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

        分享
        舉報
          
          

            1. jizz成熟丰满 | www.撸一撸 | 欧美毛片在线 | 十八毛片18女人18毛片免费观看 | 孕妇张开双腿任我玩 |