.net - 为 wp7 应用程序运行测试

标签 .net silverlight windows-phone-7 testing msbuild

我想为我的 Windows Phone 7 应用程序运行单元测试和集成测试。但是 jeff wilcox 提供的库和来自 http://smartypantscoding.com/a-cheat-sheet-for-unit-testing-silverlight-apps-on-windows-phone-7 的代码通过模拟器运行。

但我想以与任何 Windows 应用程序运行相同的方式运行单个测试,例如通过右键单击测试类中的单个测试......如果 soemone 想要通过命令行运行测试而不调用 sdk。

但是目前可用的单元测试框架是通过模拟器运行的。

最佳答案

通过良好的关注点分离和一些限制,您可以使用 Silverlight 运行时执行测试。配置完成后,您可以使用 ReSharper+ 运行测试 AgUnit或 VS 中的 TestDriven.net 和 Statlight从命令行。

您可以在 blog post I wrote up 上阅读有关设置说明的信息但为了保留有关 SO 的信息,我将在此处进行总结:

  • 引用 Microsoft.Silverlight.TestingMicrosoft.VisualStudio.QualityTools.UnitTesting.Silverlight 来自 Silverlight(不是 WP)工具包<
  • %programfiles%\Reference Assemblies\Microsoft\Framework\Silverlight\v4.0\Profile\WindowsPhone71 引用程序集并将 Copy Local 设置为 true

限制包括:

  • 您的测试程序集不能引用手机特定的程序集或类型(如 Microsoft.Phone.*)
  • 一些共享的 API 实际上是不同的

如果您可以处理所有这些(我还没有决定它是否值得),它可以提供一个非常快的测试周期,并且仍然可以对任何超出限制的内容运行模拟器内测试。

我们真正需要的是模拟器支持快速、 headless 模式(模拟器内测试更兼容)和某种 Gallio适配器。

关于.net - 为 wp7 应用程序运行测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9063425/

相关文章:

c# - WP7邮件客户端是否使用ActiveSync

c# - 如何播放隔离存储中的音频(流方法除外)?

c# - 外键属性无效? (先 Entity Framework 代码)

c# - c# 中最少代码的无限循环示例

.net - 无法理解.net 2010跟踪和app.config

silverlight - 导航到 Windows Phone 7 中不同程序集中的 XAML 页面

silverlight - 无法在 Silverlight 项目 C# 中使用 DockPanel

windows - 运行标签不支持 WP7 中的数据绑定(bind)?

.net - 如何编码多维数组

.net - 将 Silverlight 4 升级到 5 问题 - 混合库?