HttpRunner3.X - 框架環境搭建及使用的完整教程


一、環境配置

1、安裝:pip install httprunner

2、檢驗是否安裝成功:hrun -V

3、在 HttpRunner 安裝成功后,系統中會新增 4 個命令:

  • httprunner: 核心命令,用於所有函數
  • hrun:httprunner 的縮寫,功能與 httprunner 完全相同,用於運行yaml/json/pytest測試用例
  • hmake:httprunner make的別名,用於將YAML/JSON測試用例轉換為pytest文件
  • har2case:輔助工具,可將標准通用的 HAR 格式(HTTP Archive)轉換為YAML/JSON格式的測試用例

二、創建httprunner項目

1、創建項目:httprunner startproject httprunner2_demo

可以cd到指定目錄后,再創建,以下就是每個目錄代表的含義:
  • debugtalk.py 放置在項目根目錄下(借鑒了pytest的conftest文件的設計)
  • .env 放置在項目根目錄下,可以用於存放一些環境變量
  • reports 文件夾:存儲 HTML 測試報告
  • testcases 用於存放測試用例
  • har 可以存放錄制導出的.har文件

2、運行項目的用例:hrun httprunner2_demo 或 pytest httprunner2_demo

3、將har文件轉換成腳本,舉例有文件test.har

  • 轉yaml格式腳本:har2case test.har -2y
  • 轉json格式腳本:har2case test.har -2j
  • 轉pytest文件:har2case test.har

三、運行代碼

  因為httprunner封裝了pytest,所有既可以用hrun去運行,也可以用pytest去運行。
  舉例有文件test_test.py
  • hrun運行:hrun test_test.py   (若想在日志控制台查看詳細的接口返回信息,可以在命令加 -s ,即hrun -s test_test.py
  • pytest運行:pytest tetst_test.py

四、allure安裝

1、安裝python依賴包:pip3 install pytest-allure-adaptor

2、安裝allure:pip install allure-pytest

執行命令后報錯module 'pytest' has no attribute 'allure'的問題,解決方案如下:
  • 發現之前安裝了pytest-allure-adaptor。
  • 如果存在安裝過的pytest-allure-adaptor插件,
  • 先卸載:pip uninstall pytest-allure-adaptor
  • 重新安裝allure-pytest:pip install allure-pytest
  • 如果上述方法安裝不了,則改用豆瓣進行安裝,格式為:pip install 庫名 -i http://pypi.douban.com/simple/  --trusted-host pypi.douban.com

五、安裝allure命令行工具

  下載allure(https://repo.maven.apache.org/maven2/io/qameta/allure/allure-commandline/),打開bin目錄運行allure.bat,
配置環境變量后,在cmd運行allure,返回如下圖,即安裝成功

六、allure運行用例,生成測試報告

1、進入測試用例目錄下,指定運行用例:

  • 測試文件:如果是填寫文件名,默認是當前路徑的文件,如果要運行指定文件,則測試文件要帶上路徑
  • reprort: 是用於存放的文件(默認是存放在當前路徑,如果要存放在指定路徑,則文件名要帶上路徑)
  • pytest運行的測試用例只能是.py格式,hrun運行的測試用例,可以是pytest格式,也可以是yml格式

步驟一:運行測試用例打開cmd,定位到hetest_re_test.py所在的目錄下

  • pytest運行:pytest hetest_re_test.py --alluredir report
  • hrun運行:hrun hetest_re.yml --alluredir=report
  注:也可以在python的控制台直接輸入命令,運行完后會在當前文件夾下生成測試結果文件夾 .pytest_cache、report

步驟二:生成報告

  • allure generate report # 默認在當前目錄下生成allure-report文件
  • allure generate report -o allure-report --clean  #  --clean是為了清空已有的測試報告; -o allure-report 是指定清空測試報告的文件allure-report
 會在當前文件夾生成 allure-report 文件夾,包含HTML測試報告 index.html ,然后用瀏覽器打開查看

2、全部運行:pytest --alluredir report

  • 全部運行的是test_.*py的文件
  • pytest --alluredir report
  • 會在當前文件夾下生成測試結果文件夾 .pytest_cache、report
  • allure generate report
  • 同樣會在當前文件夾生成 allure-report 文件夾,包含HTML測試報告 index.html,含所有測試用例結果數據

附上HttpRunner官方文檔:https://docs.httprunner.org/


免責聲明!

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



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