2024年にもなってperl5の話題。
古いスクリプトをいじっているとTest::Moreだけで書いてあったテストが読みづらくて仕方なかったのでTest::Specで書き直してみた。
以下のような書き方が良い。
describe "ほげほげすると" => sub { it "ふがふができる" => sub { ok $result or diag "情報"; }; };
こうするとテスト失敗時に以下のような出力となる。
# Failed test 'ほげほげすると ふがふができる' # at example.t line 10. # 情報
ポイントは`ok`の使い方。
`ok($result,"test name")`と書いてしまうと、test nameが出力されてしまい、describeとitに書いた文が出力されない。
またdiagを書けばテスト失敗時の手がかりを増やせる。