GetHashCode と Equals を実装した .NET クラスがあります。
私はすべてのプロパティをカバーし、これらの関数のテストを行ったと信じていますが、将来、誰かがプロパティを追加し、それを GetHashCode および Equals 関数に追加するのを忘れる可能性があります。これらの関数を忘れると、新しいプロパティが異なるオブジェクトに対して Equals 関数が true を返すことになります。
オブジェクトの既存のすべてのプロパティをループし、何かが忘れられていないかどうかをテストする、テスト コードで使用できるツールまたはコードを探しています。
単体テストは次のようになります。
for each property in TargetType
dim instance1 as new TargetType
dim instance2 as new TargetType
instance1.property=1
instance2.property=2
Assert.AreNotEqual(instance1,instance2)
next
もちろん、正しいデータ型を使用するには、プロパティの割り当てがスマートである必要があります