created: 2023-08-24T07:06:52.793Z
Mojo::Test でのテストで500エラーになるときのログメッセージをみる
Test::Mojo
でテストを行なっている時、レスポンスが500の場合でもログメッセージを出力したりしない。
これは親切な仕様で、エラーを期待している場合にもいちいち表示されていたらテストレポートが見にくくてしょうがないためこうなっている。
ただし、200を期待している場合に500エラーが返ってきている場合に「どこの処理でエラーになったか」を知りたくなる。それを見るためにはログレベルを環境変数でセットすることになる。
# テストの先頭にこんな感じで環境変数を入れる
$ENV{"MOJO_LOG_LEVEL"} = "error";
use strict;
use warnings;
スタックトレースまでは出してくれないが、デフォルトの形式でログを出してくれる。
[2023-08-24 16:13:10.67616] [241] [error] [Nff0Eb51BHMK] Can't call method "get_columns" on an undefined value at /app/src/Home.pm line 63.