私と同僚は新しいプロジェクトを開始し、TDD を最大限に活用しようとしています。私たちはまだ単体テストに関するすべての概念を把握しており、これまでのところ主に他の例に基づいています。
私の同僚は最近、NUnit 構文ヘルパーの要点に疑問を投げかけました。アサーションの例を次に示します。
Assert.That(product.IsValid(), Is.False);
私にはこれは完全に理にかなっていproduct.IsValid()
ますfalse
。一方、私の同僚は、単純に次のように書くことを好みます。
Assert.That(!product.IsValid());
彼は彼に、これはより理にかなっており、より簡単に読むことができると言います.
これまでのところ、私たちが同意できる唯一のことは、前者からテストが失敗したときに、より役立つ出力が得られる可能性が高いということですが、より良い説明が必要だと思います. 構文ヘルパー ( http://nunit.com/blogs/?p=44 ) に関するいくつかの情報を調べましたが、それらは理にかなっていますが、正しく「感じる」以外の制約の概念を完全には理解していません。 .
制約の概念を使用する理由と、上記の単体テストの例を改善する理由を誰かが説明できるのだろうか?
ありがとう。