Erlang共通テストでテストケースを手動で失敗させる最良の方法は何ですか? 私はこのようなものを使用しています:
ok = nok, % fail as soon as possible
badmatch 例外を発生させ、ケースを失敗させます。これを達成するための他の(より良い)方法があるのだろうか?
私は時々error
関数を使用します:
error(incorrect_foo)
そうすれば、同じテストケース内で失敗のさまざまな原因を簡単に区別できます。たとえばerror(incorrect_bar)
、同じ関数のどこかにあるかもしれません。
いいえ、それは標準的な完全に良い方法です。別の方法は、失敗するだけでなく、より関連性の高いエラーを生成しようとすることです。たとえば、関数が成功したときにfoo_test()
返さok
れる場合、代わりに次のように書くことができます。
ok = foo_test()
テストとエラーの生成の両方を行います。これはまだbadmatch
エラーですが、何が問題なのかを簡単に確認できます。