【问题标题】:Unit Testing Portable Class Library for Windows Store failsWindows Store 的单元测试可移植类库失败
【发布时间】:2013-10-15 13:02:34
【问题描述】:

我目前正在对引用 System.Net.Http 的 pcl 进行单元测试。 WP8 单元测试运行良好,但 Windows 存储单元测试在“_httpClient.GetAsync(path).Result;”处崩溃除了“TaskCanceledException”。

如果我从 Windows 商店的普通应用程序的 pcl 调用该函数,它工作正常!是的,设置了所需的“Internet”功能。

我想重用我的单元测试代码,而不必为两个平台编写两次。有人遇到过类似的问题或知道发生了什么吗?

还试图让 Windows 商店的普通应用程序运行单元测试似乎不起作用。所有测试都崩溃并显示“无法激活 Windows 应用商店应用单元测试执行程序”消息。

提前致谢!

【问题讨论】:

  • 你能分享代码来重新创建这个吗?
  • 所以,我认为您应该为此使用假货。您不应该尝试实际检索 HTTP 结果,您应该添加一个假的并让它返回所有可能返回的结果。创建一个测试,通过输入一个旨在返回所述结果的假来响应每个结果。这将帮助您测试响应的处理(这是您应该测试的)。

标签: c# unit-testing windows-phone-8 windows-store-apps portable-class-library


【解决方案1】:

嗯,这很容易。单元测试不在 UI 线程中运行,而我的正常代码运行。因此,使用 .Result 创建了一个死锁,其中 ui 线程正在等待 ui 线程。非常愚蠢的错误:/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-14
    • 2015-02-05
    • 1970-01-01
    相关资源
    最近更新 更多