如何在VS 2012 Professional RC中添加假货组件?

时间:2012-06-13 06:27:56

标签: c# tdd visual-studio-2012 microsoft-fakes

根据以下关于VS 2012和Microsoft Fakes Test Framework的两篇文章,我应该能够在我的测试项目的参考资料中右键单击一个程序集并选择“Add Fakes Assembly”来在Visual中创建一个新的Microsoft Fakes Framework程序集Studio 11 / 2012.但是我没有找到VS 2012 RC Professional中的上下文菜单项。我可能需要引用Microsoft.QualityTools.Testing.Fakes程序集,但我也无法在添加引用搜索中找到它。自beta以来所需的菜单是否已更改?我是否需要安装扩展程序?

如何在VS 2012 Professional RC中添加假冒装配?

参考文章:

1 个答案:

答案 0 :(得分:33)

更新: VS2012 Update 2将包括Premium中的Fakes支持。

请参阅http://blogs.msdn.com/b/bharry/archive/2013/01/30/announcing-visual-studio-2012-update-2-vs2012-2.aspx

我在Microsoft Connect门户中问过这个问题......答案令人失望:

  

RC文档不正确。假货仅适用于VS Ultimate。我已经通过了你对Fakes团队的关注。目前,我们没有关于VSX的PEX的任何信息。

我的详细问题是:

  

MSDN文档指出,Fakes框架是用于单元测试代码隔离的Moles框架的后续版本,可在Premium和Ultimate版本中找到。

     

http://msdn.microsoft.com/en-us/library/dd264975(v=vs.110)

     

此外,在MSDN博客的其他地方,Peter Provost在几个月前为VS2011版本确认了相同内容:

     

http://blogs.msdn.com/b/visualstudioalm/archive/2012/03/09/10279666.aspx

     

但是当我今天试用高级遥控器时,我无法看到"添加假装组件"我的测试项目中的上下文菜单选项,用于包含要测试的代码的示例DLL。只有在我安装了Ultimate RC后才能获得Fakes菜单支持。

     

这促使我要求您澄清以下内容:

     

1)我的观察是否正确,Fakes确实只适用于Ultimate?那是因为它依赖于IntelliTrace,这是一个仅限Ultimate的功能吗?

     

2)如果是,那么为什么有相互矛盾的信息表明假冒伪劣的可用性?

     

3)为什么Fakes框架现在依赖于IntelliTrace,当它在VS 2010中没有这种依赖性时运行良好?这实际上是切断了Moles的现有用户,使用专业甚至高级版本的VS 2010,并将其升级到VS 2012,因为他们现在依赖Moles进​​行单元测试。

     

4)我们已经在我们的VS 2010专业版中使用了Moles。所以这个观察确实让我担心目前决定在我们的C#开发人员中使用Moles。充其量,我们可以考虑为我们的大型开发人员基础升级到Premium(假设我们也有代码覆盖支持)......但是直接升级到Ultimate只是为了获得UT支持永远不会出现在卡上。

     

我希望最早澄清这些要点,以便我们可以开始寻找Moles的替代品,以防你的决定确实让Fakes独享VS 2012 Ultimate。