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