読者です 読者をやめる 読者になる 読者になる

rubyのtest/unitを失敗ケースがあっても続けたい!

今回はrubyのテストツール?であるtest/unitについて使っていて不便だと感じた点があったので、まとめました。

私はある業務で、「テストケースをどれくらい網羅しているのか」を測定し、精度を図りたいことがありました。
その時にこのtest/unitを使ったのですが、test/unitでは、テストケースで「失敗」してしまうとそこで処理が中断してしまします。
そのため、それ以降に書いたテストは実行されません。
そうすると、トータルで何回成功して、何回失敗したのかはわかりません。

そこで調べてみると、失敗した際にはrubyの方で例外処理扱いされているようなので、その部分をrescueして、その際にあるインスタンス変数のカウントを1加えるというようにすることにしました。

@failures_num= 0
begin
  assert_equal テスト内容	
rescue => e
  @failures_num = @failures_num + 1
end				

何かの参考になれば幸いです