Wir haben Silverlight-Unit-Tests erstellt, indem wir ein Unit-Test-Projekt für Plain Vanilla .net erstellt haben, alle Referenzen außer dem Unittestframework entfernt und Referenzen zu den von uns benötigten SL-Assemblys hinzugefügt haben. System.Core, ...). Weitere Informationen finden Sie unter this Blogpost. Wir können dies tun, da wir uns an das MVVM-Muster halten und nahezu keinen Code im Codebehind haben. Wir testen nicht die Ansicht, sondern die Funktionalität in allen dahinter liegenden Schichten (im Prinzip VM-M).Integrieren von Silverlight-Unit-Tests in TFS Build
Jetzt können wir die Silverlight-Logik in unserem Team jede Nacht testen. Das funktioniert ziemlich gut, bis wir beginnen, SL-Projekte und normale .NET-Projekte zu mischen. Wenn wir alle SL-Unit-Tests auswählen und ausführen, werden sie bestanden. Gleiches gilt für die .NET-Unit-Tests. Wenn wir sie alle auf einmal laufen lassen, scheitert entweder der eine oder der andere vollständig. Die Meldung, die wir sehen, besagt: "Unit Test Adapter warf Ausnahme: Kann einen oder mehrere der angeforderten Typen nicht laden. Holen Sie die LoaderExceptions-Eigenschaft für weitere Informationen.". Ich vermute, das Problem ist, dass diese beiden Tests unterschiedliche System-Assemblies verwenden, aber ich konnte das Problem nicht lokalisieren.
Hat jemand das versucht? Prost, Phil
Danke Jeff, wir haben es gelöst, indem wir mstest.exe in unserem Build-Skript zweimal aufgerufen haben (einmal für .NET-Tests, einmal für Silverlight-Tests). – Phil