本文接上篇繼續簡介pytest常用的命令行選項。
8、-v(--verbose) 選項
使用-v/--verbose選項,輸出的信息會更詳細。最明顯的區別就是每個文件中的每個測試用例都占一行,測試的名字和結果都會顯示出來,而不僅僅是一個點或字符。如下圖:
在彩色顯示器上可以看到FAILED標記為紅色,PASSED標記為綠色。
9、-q(--quiet)選項
該選項的作用與-v/--verbose的相反,它會簡化輸出信息。如下圖:
使用-q選項會簡化輸出信息,只保留最核心的內容。
10、--tb=style 選項
--tb=style選項決定捕捉到失敗時輸出信息的顯示方式。某個測試用例失敗后,pytest會列舉出失敗信息,包括失敗出現在哪一行、是什么失敗、怎么失敗的,此過程我們稱之為“信息回溯”。大多數情況下,信息回溯是有必要的,它對找到問題很有幫助,但有時也會對多余的信息感到厭煩,這時--tb=style選項就有用武之地了。常用的style類型有short、line、no。short模式僅輸出assert的一行以及系統判定內容(不顯示上下文);line模式只使用一行輸出顯示所有的錯誤信息;no模式則直接屏蔽全部回溯信息。
使用--tb=no屏蔽全部回溯信息。如下圖:
使用--tb=line,它可以告訴錯誤的位置,如下圖:
使用--tb=short,顯示的回溯信息比前面兩種模式的更詳細。如下圖:
除此之外,還有--tb=long輸出最為詳盡的回溯信息;--tb=auto是默認值,如果有多個測試用例失敗,僅打印第一個和最后一個用例的回溯信息(格式與long模式一致);--tb=native只輸出Python標准庫的回溯信息,不顯示額外信息。
11、--version 選項
使用--version可以顯示當前的pytest版本及當前目錄。如下圖:
由於是用python pip命令安裝的,所以會顯示對就的site-packages目錄。
12、-h(--help)選項
即使你已經熟練使用pytest,-h選項依然非常有用,它不但能展示原生的pytest的用法,還能展示新添加的插件的選項和用法。
使用-h選項可以獲得:
. 基本用法:pytest [options] [file_or_dir] [file_or_dir] [...]
. 命令行選項及其用法,包括新添加的插件的選項及其用法。
. 可用於ini配置文件中的選項。
. 影響pytest行為的環境變量。
. 使用pytest --markers時的可用marker列表。
. 使用pytest --fixtures時的可用fixture列表。
幫助信息最后會顯示一句話:
shown according to specified file_or_dir or current dir if not specified
這句話的意思為:顯示結果取決於指定的文件或目錄,未指定的則默認使用當前目錄和文件。這句話非常重要,選項、marker、fixture都會因為目錄的變化而發生變化。