httprunner學習-運行用例命令行參數詳解


前言

HttpRunner 在命令行中啟動測試時,通過指定參數,可實現豐富的測試特性控制。

命令行參數CLI

使用 -h 查看相關命令行參數

hrun -h

參數名稱 參數值 參數說明
-h, --help 不帶參數 查看幫助信息
-V, --version 不帶參數 查看版本號
--no-html-report 不帶參數 不生成測試報告
--html-report-name HTML_REPORT_NAM 重命名html報告名稱
--html-report-template HTML_REPORT_TEMPLATE 自定義html報告模板,參數帶上html模板的信息路徑
--log-level LOG_LEVEL 日志等級,如:debug
--log-file LOG_FILE 指定日志文本保存路徑
--dot-env-path DOT_ENV_PATH 指定環境變量.env的詳細路徑
--failfast 不帶參數 運到失敗后停止測試
--startproject STARTPROJECT 指定項目的根目錄
--validate [VALIDATE [VALIDATE ...]] 校驗json格式
--prettify [PRETTIFY [PRETTIFY ...]] 各式化json文件

--no-html-report

不生成html報告,使用--no-html-report

hrun test_demo.yml --no-html-report

這樣運行的時候,就不會生成html報告

D:\soft\untitled>hrun test_demo.yml --no-html-report test_demo case1 INFO GET http://127.0.0.1:8000/api/test/demo INFO status_code: 200, response_time(ms): 4.96 ms, response_length: 255 bytes INFO start to extract from response object. INFO start to validate. . ---------------------------------------------------------------------- Ran 1 test in 0.014s OK 

--html-report-name

--html-report-name 用於指定測試報告的名稱

hrun test_demo.yml --html-report-name yoyo

這樣運行之后,會再當前的report目錄下,生成一個yoyo的文件夾

--html-report-template

自定義測試報告模板,后面參數是模板報告的絕對路徑

hrun test_demo.yml --html-report-template /path/templates/extent_report_template.html

如果指定報告名稱的話,需要修改源碼,詳情參考httprunner學習10-測試報告ExtentReport

--log-level

打印日志等級,使用--log-level參數,日志有五個等級:debug < info < warn < error < critical

各等級的含義:

  • debug: 級別最低,用戶開發過程中的調試
  • info:打印程序運行是的正常的信息,用於替代print輸出
  • warn: 打印警告信息,不影響程序的運行
  • error: 程序運行出錯,可以修復,常用在except異常捕獲之后
  • critical: 非常嚴重,無法修復,程序繼續運行的話后果非常嚴重

設置了日志等級后,調用比等級低的日志記錄函數則不會輸出。

httprunner默認使用info等級,不帶 --log-level info 參數結果也是一樣的

hrun test_demo.yml --log-level info

設置debug等級,打印最詳細的內容

hrun test_demo.yml --log-level debug

另外三個等級warn/error/critical,只有有警告或者報錯時候,才有日志輸出,所以用的很少

D:\soft\untitled>hrun test_demo.yml --log-level warn test_demo case1 . ---------------------------------------------------------------------- Ran 1 test in 0.006s OK D:\soft\untitled>hrun test_demo.yml --log-level error test_demo case1 . ---------------------------------------------------------------------- Ran 1 test in 0.006s OK D:\soft\untitled>hrun test_demo.yml --log-level critical test_demo case1 . ---------------------------------------------------------------------- Ran 1 test in 0.007s OK 

--log-file

--log-file 參數保存日志文件到指定的目錄,保存日志文件到yoyo.txt

hrun test_demo.yml --log-file yoyo.txt

在當前運行的目錄,會生成一個yoyo.txt文件

2019-09-28 22:43:11,492 - INFO - GET http://127.0.0.1:8000/api/test/demo 2019-09-28 22:43:11,498 - INFO - status_code: 200, response_time(ms): 6.0 ms, response_length: 255 bytes 2019-09-28 22:43:11,498 - INFO - start to extract from response object. 2019-09-28 22:43:11,498 - INFO - start to validate. 2019-09-28 22:43:11,503 - INFO - Start to render Html report ... 2019-09-28 22:43:11,578 - INFO - Generated Html report: D:\soft\untitled\reports\1569681791.html 

由於日志的輸出有加顏色,所以保存的時候會有一些亂碼,我稍微改了下httprunner/logger.py文件的日志內容,但還是有一點亂碼

def setup_logger(log_level, log_file=None):
    """setup root logger with ColoredFormatter.""" level = getattr(logging, log_level.upper(), None) if not level: color_print("Invalid log level: %s" % log_level, "RED") sys.exit(1) # hide traceback when log level is INFO/WARNING/ERROR/CRITICAL if level >= logging.INFO: sys.tracebacklimit = 0 formatter = ColoredFormatter( u"%(log_color)s%(bg_white)s%(levelname)-8s%(reset)s %(message)s", datefmt=None, reset=True, log_colors=log_colors_config ) if log_file: formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s') # 加了這句 handler = logging.FileHandler(log_file, encoding='utf-8') else: handler = logging.StreamHandler() handler.setFormatter(formatter) logging.root.addHandler(handler) logging.root.setLevel(level) 

其它

--dot-env-path 用於指定.env文件的目錄

hrun test_demo.yml --dot-env-path d:\path\to.env

--failfast 遇到失敗停止測試

hrun test_demo.yml --failfast

--validate 校驗json格式,格式正確返回OK,若 JSON 文件格式存在異常,則打印詳細的報錯信息,精確到錯誤在文件中出現的行和列。

hrun --validate test_login2.json

--prettify 用於格式化json文件內容

hrun --prettify test_login2.json

D:\soft\untitled>hrun --validate test_login2.json Start to validate JSON file: test_login2.json OK D:\soft\untitled>hrun --prettify test_login2.json Start to prettify JSON file: test_login2.json success: test_login2.pretty.json 
 
轉https://www.cnblogs.com/yoyoketang/p/11604842.html


免責聲明!

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



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