【问题标题】:Using NUnit to unit test WCF RIA Services in a Silverlight 4 App在 Silverlight 4 应用程序中使用 NUnit 对 WCF RIA 服务进行单元测试
【发布时间】:2011-06-22 22:57:43
【问题描述】:

我最近尝试对使用 WCF RIA 1.0 的 Silverlight 4 项目使用 Silverlight NUnit 项目模板(Jamie Cansdale 找到的 here 模板)。我似乎很接近,但我仍然无法让它工作。

这就是我所做的

  1. 创建项目。 :)
  2. 将 Silverlight 版本更改为 4。
  3. 将 WCF RIA 服务链接设置到我的 WCF RIA 项目。
  4. 确保所有引用(mscorlib 除外)均为 CopyLocal=True。
  5. 尝试运行测试。

会发生什么?

测试夹具设置(仅包含“_context = new MyContext();”行)因以下异常而失效:

1 测试失败:SetUp:System.TypeInitializationException:“MS.Internal.JoltHelper”的类型初始化程序引发异常。 ---

是否有其他人能够使用该模板针对 WCF RIA 项目进行测试?

【问题讨论】:

    标签: c# silverlight-4.0 nunit wcf-ria-services nunit-2.5.9


    【解决方案1】:

    NUnit 控制台不支持 silverlight。 见:http://greenicicleblog.com/2010/04/27/nunit-for-silverlight-updated/ (搜索“有没有办法在 nunit-console 中运行这些?”)

    您可以从谷歌代码(来自上面的链接)获得 NUinit 的 Silverlight 端口,但是您必须使用上面第一个链接中描述的 Silverlight 测试运行器。这对于手动运行测试是可以的,但在持续集成场景中没有用。

    问题是当测试在 NUnit 控制台中运行时,我相信它在 CLR 中运行,而不是 Silverlight 运行时。

    我们已经成功地将 NUnit 和 NCover 与一些 Silverlight 代码一起使用,但那是因为我们正在测试的代码与完整的 .NET CLR 兼容。

    这也是一篇很好的文章,描述了如何使用 NUnit 对 Silverlight 进行单元测试: http://chris.59north.com/post/Introduction-to-setting-up-automated-unit-testing-in-Silverlight-with-NUnit.aspx

    【讨论】:

    • 所以要清楚,我的意思是说,我相信因为您使用的是 RIA 服务,您的项目需要 Silverlight 运行时,并且与标准 .NET CLR 不兼容,所以不会t 在 NUnit 中运行。我在上面发布的最后一个链接应该可以帮助您朝着正确的方向前进。
    • 我将查看您最后一段中的链接,但我的理解是,我引用的 Silverlight NUnit 项目模板已使用 Silverlight 库重新编译,并将运行 Silverlight 代码。我只是无法让它与 RIA 一起工作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-21
    • 1970-01-01
    相关资源
    最近更新 更多