Go の testing の Error/Fail/Fatal
備忘録。
Go の testing
パッケージでいつも Error
, Fail
, Fatal
の違いがわからなくなるので、まとめる。
Error |
Fail |
FailNow |
Fatal |
Skip |
SkipNow |
|
---|---|---|---|---|---|---|
ログを出力するか | ○ | × | × | ○ | ○ | × |
fail フラグを立てるか | ○ | ○ | ○ | ○ | × | × |
関数を終了させるか | × | × | ○ | ○ | ○ | ○ |
結論としてそれぞれの関数は上の通りに動作する。
なお Skip
, SkipNow
は呼び出す前に Fail
や Error
を呼び出していると失敗扱いになる。