Windows phone 7 WindowsPhone7模拟框架?

Windows phone 7 WindowsPhone7模拟框架?,windows-phone-7,tdd,mocking,Windows Phone 7,Tdd,Mocking,Windows Phone 7是否有模拟框架,或者我是否需要手动创建赝品 我在谷歌上还没有找到,虽然我在WP7参考资料页面上找到了Moq,但我无法让它工作。我不知道目前有任何可用的Moq 显示了使用手动创建的假对象在手机上进行测试的示例,可能是一个有用的资源 任何支持Silverlight 3的模拟框架都应该与Windows Phone 7配合使用。不过,您可能需要使用该框架的早期版本将其“静音”到Silverlight 3。没有支持WP7的模拟框架,我怀疑在WP7支持Reflection.Em

Windows Phone 7是否有模拟框架,或者我是否需要手动创建赝品


我在谷歌上还没有找到,虽然我在WP7参考资料页面上找到了Moq,但我无法让它工作。

我不知道目前有任何可用的Moq


显示了使用手动创建的假对象在手机上进行测试的示例,可能是一个有用的资源

任何支持Silverlight 3的模拟框架都应该与Windows Phone 7配合使用。不过,您可能需要使用该框架的早期版本将其“静音”到Silverlight 3。

没有支持WP7的模拟框架,我怀疑在WP7支持Reflection.Emit之前,不会有任何模拟框架

在.NETFramework上,存在用于创建模拟框架的工具(探查器API、CodeDem、Refleciton.Emit等)。这些技术中的大多数不会在Silverlight本身上工作,因为它缺少很多BCL/CLR。所有现有的Silverlight模拟框架都使用Reflection.Emit。WP7不支持Reflection.Emit,因此没有Silverlight模拟框架可以在WP7上工作

由于这个原因,我个人在Silverlight运行时上测试WP7程序集。这远远不是最优的(糟糕透了),但在这种情况下,这是最好的

从理论上讲,可以构建一个模拟框架,使用构建后的MSIL编织,该编织应该可以在WP7上工作,但它还没有完成

如果您喜欢WP7支持反射,请考虑对这个用户语音问题进行投票:

编辑2011年12月2日:芒果支持Refleciton.Emit。好极了基于Emit的模拟框架应该可以正常工作

我刚买了一个,它可以与WindowsPhone7(sortof)一起使用

您需要创建一个默认的VisualStudio测试项目,您将得到一个错误,说明您的WindowsPhone7项目无法被引用,但由于某些原因,模拟和测试工作得非常好


无论如何,我对它能够创建的模拟非常满意。

只是想注意我在MSDN上找到的一些信息:

模拟类是手动开发的,因为无法在Windows Phone平台上使用模拟框架。模拟框架需要能够发出Microsoft中间语言(MSIL)代码,这在Windows Phone平台上目前是不可能的


关于您的编辑2011年2月12日-System.Reflection.Emit命名空间存在,但据我所见,WP7 Silverlight中包含的具体类大大减少了。你知道有什么足够让模拟继续进行吗?我刚刚发布了针对Windows Phone 7的模拟框架的早期版本: