プロパティを持つクラス (多数) があります。ロジックがあるものとないものがあります。これらのプロパティをテストしたい場合、どうすればよいでしょうか?
最近、ユニットテストを作成するBDDスタイルに興味があります。
したがって、コンテキストのセットアップを行います。基本的には、SUT を作成し、必要なものをロードします。次に、各 Observation (テスト メソッド) で、特定のプロパティに含まれるべきものが含まれていることを確認します。
これが私の質問です。SUT に 20 個のプロパティがある場合、20 個の観測/テストを作成する必要がありますか? プロパティの 1 つにもっと興味深いロジックが含まれていれば、それ以上になる可能性があります。
[Observation]
public void should_load_FirstName()
{
Assert.Equals<string>("John", SUT.FirstName);
}
[Observation]
public void should_load_LastName()
{
Assert.Equals<string>("Doe", SUT.LastName);
}
[Observation]
public void should_load_FullName()
{
Assert.Equals<string>("John Doe", SUT.FullName);
}
しかし、単純なものを 1 回の観察に集約した方がよいでしょうか?
[Observation]
public void should_load_properties()
{
Assert.Equals<string>("John", SUT.FirstName);
Assert.Equals<string>("Doe", SUT.LastName);
Assert.Equals<string>("John Doe", SUT.FullName);
}
または、カスタム属性 (メソッドに複数回適用できる) を使用した場合はどうなるでしょうか。私ができるように、次のようなものです:
[Observation(PropertyName="FirstName", PropertyValue="John")]
[Observation(PropertyName="LastName", PropertyValue="Doe")]
[Observation(PropertyName="FullName", PropertyValue="John Doe")]
public void should_load_properties()
{
}