Testen von PropertyChanged-Ereignissen:Ist dies ein guter Weg?

Testen von PropertyChanged-Ereignissen:Ist dies ein guter Weg?

Ich verwende eine kleine Fluent-API, um genau das zu tun. Es erlaubt Ihnen, Tests wie folgt zu schreiben:

var imageViewModel = TestHelper.GetTestImageViewModel();
imageViewModel.ShouldNotifyOn(s => s.EditModeEnabled)
    When(s => s.Mode = true);

Neben der Prägnanz bevorzuge ich diesen Ansatz, weil er typsicher ist – keine String-Werte, die mit Ihrer API synchronisiert werden müssen.

Um zu testen, ob das Ereignis für mehr als eine Eigenschaft ausgelöst wird, können Sie einfach einen weiteren Test schreiben, der dies tut. Dadurch erhalten Sie viele Tests, aber jeder wird sehr klein sein, und Sie vermeiden Behauptungs-Roulette.