私はTDDを初めて使っています。私は、ビュー・モデルで必要なプロパティをプレーン・オート・プロパティとして作成し始めました。Viewmodelのユニットテスト
public string Firstname { get; set; }
その後、私はその後、私はテストはこのように合格するために実際の実装を延長するテスト
[TestMethod]
[Tag("Property")]
public void FirstNameTest()
{
ViewModel = new CustomerViewModel();
ViewModel.PropertyChanged += (s, e) =>
{
Assert.AreEqual("Firstname", e.PropertyName);
Assert.AreEqual("Test", ViewModel.Firstname);
};
ViewModel.Firstname = "Test";
}
を作成します。
public string Firstname
{
get { return _contact.FirstName; }
set
{
if (_contact.FirstName == value)
return;
_contact.FirstName = value;
RaisePropertyChanged(() => Firstname);
}
}
私が持っている問題は、テストはまだ合格ということですAutプロパティの場合。どのように私のプロセスを改善することができる私のための任意のヒント?
ラムダ内にアサートを配置しないでください。アサートは、失敗したときに例外をスローします。あなたがラムダ内でそれを行うと、それらはテスト中のオブジェクトの内部で起動し、オブジェクトによって処理されるリスクを実行します。その代わりに、テストスコープの一部の(通常はbool)変数に結果を割り当ててから、コールスタックを戻したり解凍したときに結果をアサートしたりする必要があります。 – Tormod