日志級別
可用的日志級別
Robot Framework中日志文件中的消息可以有不同的日志級別. 這些消息有些是Robot Framework自己寫入, 有的是被執行的關鍵字打印的不同的級別日志消息. 可用的日志級別包括:
FAIL
當關鍵字失敗時使用. 只能由Robot Framework自己使用.
WARN
用來展示警告. 警告消息同樣會出現在 控制台以及日志文件的測試執行錯誤區, 不過它們不會影響到測試用例的狀態.
INFO
默認的消息級別. 默認情況下日志文件中不會顯示低於此級別的消息.
DEBUG
用於調試目的. 當需要記錄測試庫內部執行過程時很有用. 當關鍵字失敗時, 代碼失敗的地方會自動使用該級別打印traceback信息.
TRACE
更詳細的調試級別. 使用該級別時, 關鍵字的參數和返回值會自動寫入日志.
設置日志級別
默認情況下, 低於 INFO 級別的日志消息不會寫日志, 不過這個閾值可以通過命令行選項 --loglevel (-L) 修改. 該選項接受任意的日志級別作為參數. 還可以使用 NONE 這個特殊值來禁止所有日志.
在使用Rebot 測試輸出的處理 時也可以使用 --loglevel 選項. 這樣可以做到, 例如, 在測試執行時使用 TRACE 級別, 產生詳細的日志信息, 但是要在隨后普通查看時使用 INFO 級別生成更小的日志文件. 默認情況下所有執行階段產生的消息在Rebot處理時也都包含. 反之則不行, 執行階段省略的消息不可能再恢復.
在測試數據中使用BuiltIn關鍵字 Set Log Level 也可以改變日志級別. 該關鍵字的參數和 --loglevel 一樣, 並且會返回原來的日志級別以備后續(如teardown)恢復.
可見的日志級別
自Robot Framework 2.7.2版本開始, 如果日志文件中包含 DEBUG 或 TRACE 級別的消息, 則在右上角會出現一個下拉框, 讓用戶選擇低於某個級別的日志不可見. 這在使用 TRACE 級別運行測試時特別有用.
An example log showing the visible log level drop down
默認情況下, 下拉框被設置選中最低級別, 以顯示日志文件中的所有消息. 默認的可視日志級別可通過選項 --loglevel 更改, 將其值設置為如下的格式:
--loglevel DEBUG:INFO
可視日志級別跟在正常的日志級別之后, 用冒號分隔, 上例中, 測試運行的日志級別是 DEBUG, 但是默認的可視級別是 INFO.