我们一直在通过创建一个普通的 vanilla .net 单元测试项目来创建 silverlight 单元测试,删除除 unittestframework 之外的所有引用,然后添加对我们需要的 SL 程序集(系统、System.Core 等)的引用。有关更多信息,请查看此博客文章。我们可以做到这一点,因为我们遵循 MVVM 模式并且代码隐藏中几乎没有代码。我们不是在测试视图,而是在测试后面所有层的功能(基本上是 VM-M)。
现在,这使我们能够每天晚上在我们的团队构建中测试 silverlight 逻辑。这工作得很好,直到我们开始混合 SL 项目和普通的 .NET 项目。当我们选择所有 SL 单元测试并运行它们时,它们就通过了。.NET 单元测试也是如此。然而,当我们一次运行它们时,要么一组或另一组完全失败。我们看到的消息指出:“单元测试适配器抛出异常:无法加载一种或多种请求的类型。检索 LoaderExceptions 属性以获取更多信息......”。我想问题是这两组测试使用不同的系统程序集,但我无法查明问题所在。
有没有人试过这个?干杯,菲尔