1
我有一個函數在遇到特定條件時向stdout輸出錯誤消息。使用boost C++單元測試套件測試非致命錯誤消息
if(!condition)
printf("ERROR: Condition fail!");
該函數的單元測試拿起「ERROR」的關鍵字,並且在所有斷言通,升壓單元測試套件認爲錯誤在執行並顯示。有沒有辦法指定一個預期的錯誤信息,或給定的單元測試預期的錯誤字符串?
我有一個函數在遇到特定條件時向stdout輸出錯誤消息。使用boost C++單元測試套件測試非致命錯誤消息
if(!condition)
printf("ERROR: Condition fail!");
該函數的單元測試拿起「ERROR」的關鍵字,並且在所有斷言通,升壓單元測試套件認爲錯誤在執行並顯示。有沒有辦法指定一個預期的錯誤信息,或給定的單元測試預期的錯誤字符串?
該函數的單元測試拿起 「ERROR」 的關鍵字,
它不是。
並且當所有斷言通,升壓單元測試套件認爲錯誤在執行,並將其顯示
不是。單元測試不知道您的測試打印到控制檯的事實。
您的測試,雖然包含了一行代碼:
printf("ERROR: Condition fail!");
這行有打印下面的文本到標準輸出設備的立竿見影的效果:
ERROR: Condition fail!
這是唯一的你看到文字的原因。如果您檢查報告或日誌,您會發現(除非聲明失敗)測試通過。