草庐IT

c# - 如何在 VS 2012 Professional RC 中添加假程序集?

coder 2023-07-10 原文

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

如何在 VS 2012 Professional RC 中添加假程序集?

引用的文章:

最佳答案

更新: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 门户中问过这个问题...答案令人失望:

The RC documentation was incorrect. Fakes are available only in VS Ultimate. I have passed your concerns on the Fakes team. At the moment, we don't have any information about PEX for VS 2012.

我的详细问题是:

MSDN documentation states that the Fakes framework, the successor of Moles framework for isolatiion of code for unit tests is available in the Premium and Ultimate editions.

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

Also, elsewhere in MSDN blogs, Peter Provost confirmed the same some months ago for the VS2011 release:

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

But when I tried out the Premium RC today, I couldn't see the "Add Fakes Assembly" context menu option in my test project for my sample DLL containing code to test. It was only after I installed the Ultimate RC that I got the Fakes menu support.

This prompts me to ask of you to clarify the following:

1) Is my observation correct, that Fakes is indeed only available with Ultimate? Is that because of its dependency on IntelliTrace, which is an Ultimate-only feature?

2) If yes, then why is there conflicting information indicating the availability of Fakes with Premium?

3) Why should the Fakes framework be now dependent on IntelliTrace when it worked well without this dependency in VS 2010? This is essentially cutting off existing users of Moles with Professional or even Premium editions of VS 2010 and putting their upgrade to VS 2012 in question because of their existing reliance on Moles for their unit tests.

4) We are already using Moles with our VS 2010 Professional edition. So this observation indeed has me worried about the present decision to use Moles among our C# developers. At best, we can think of an upgrade to Premium for our large developer base (given that we also have code coverage support)... but an upgrade straight to Ultimate just to get UT support will never be on the cards.

I wish to have these points clarified at the earliest so that we can start looking for alternatives to Moles, in case your decision is indeed to keep Fakes exclusive to VS 2012 Ultimate.

关于c# - 如何在 VS 2012 Professional RC 中添加假程序集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11009332/

有关c# - 如何在 VS 2012 Professional RC 中添加假程序集?的更多相关文章

  1. ruby - 如何在 Ruby 中顺序创建 PI - 2

    出于纯粹的兴趣,我很好奇如何按顺序创建PI,而不是在过程结果之后生成数字,而是让数字在过程本身生成时显示。如果是这种情况,那么数字可以自行产生,我可以对以前看到的数字实现垃圾收集,从而创建一个无限系列。结果只是在Pi系列之后每秒生成一个数字。这是我通过互联网筛选的结果:这是流行的计算机友好算法,类机器算法:defarccot(x,unity)xpow=unity/xn=1sign=1sum=0loopdoterm=xpow/nbreakifterm==0sum+=sign*(xpow/n)xpow/=x*xn+=2sign=-signendsumenddefcalc_pi(digits

  2. ruby - 在 Ruby 程序执行时阻止 Windows 7 PC 进入休眠状态 - 2

    我需要在客户计算机上运行Ruby应用程序。通常需要几天才能完成(复制大备份文件)。问题是如果启用sleep,它会中断应用程序。否则,计算机将持续运行数周,直到我下次访问为止。有什么方法可以防止执行期间休眠并让Windows在执行后休眠吗?欢迎任何疯狂的想法;-) 最佳答案 Here建议使用SetThreadExecutionStateWinAPI函数,使应用程序能够通知系统它正在使用中,从而防止系统在应用程序运行时进入休眠状态或关闭显示。像这样的东西:require'Win32API'ES_AWAYMODE_REQUIRED=0x0

  3. ruby - 我需要将 Bundler 本身添加到 Gemfile 中吗? - 2

    当我使用Bundler时,是否需要在我的Gemfile中将其列为依赖项?毕竟,我的代码中有些地方需要它。例如,当我进行Bundler设置时:require"bundler/setup" 最佳答案 没有。您可以尝试,但首先您必须用鞋带将自己抬离地面。 关于ruby-我需要将Bundler本身添加到Gemfile中吗?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/4758609/

  4. ruby-on-rails - Railstutorial : db:populate vs. 工厂女孩 - 2

    在railstutorial中,作者为什么选择使用这个(代码list10.25):http://ruby.railstutorial.org/chapters/updating-showing-and-deleting-usersnamespace:dbdodesc"Filldatabasewithsampledata"task:populate=>:environmentdoRake::Task['db:reset'].invokeUser.create!(:name=>"ExampleUser",:email=>"example@railstutorial.org",:passwo

  5. ruby - 如何在 buildr 项目中使用 Ruby 代码? - 2

    如何在buildr项目中使用Ruby?我在很多不同的项目中使用过Ruby、JRuby、Java和Clojure。我目前正在使用我的标准Ruby开发一个模拟应用程序,我想尝试使用Clojure后端(我确实喜欢功能代码)以及JRubygui和测试套件。我还可以看到在未来的不同项目中使用Scala作为后端。我想我要为我的项目尝试一下buildr(http://buildr.apache.org/),但我注意到buildr似乎没有设置为在项目中使用JRuby代码本身!这看起来有点傻,因为该工具旨在统一通用的JVM语言并且是在ruby中构建的。除了将输出的jar包含在一个独特的、仅限ruby​​

  6. ruby - 什么是填充的 Base64 编码字符串以及如何在 ruby​​ 中生成它们? - 2

    我正在使用的第三方API的文档状态:"[O]urAPIonlyacceptspaddedBase64encodedstrings."什么是“填充的Base64编码字符串”以及如何在Ruby中生成它们。下面的代码是我第一次尝试创建转换为Base64的JSON格式数据。xa=Base64.encode64(a.to_json) 最佳答案 他们说的padding其实就是Base64本身的一部分。它是末尾的“=”和“==”。Base64将3个字节的数据包编码为4个编码字符。所以如果你的输入数据有长度n和n%3=1=>"=="末尾用于填充n%

  7. ruby - 如何指定 Rack 处理程序 - 2

    Rackup通过Rack的默认处理程序成功运行任何Rack应用程序。例如:classRackAppdefcall(environment)['200',{'Content-Type'=>'text/html'},["Helloworld"]]endendrunRackApp.new但是当最后一行更改为使用Rack的内置CGI处理程序时,rackup给出“NoMethodErrorat/undefinedmethod`call'fornil:NilClass”:Rack::Handler::CGI.runRackApp.newRack的其他内置处理程序也提出了同样的反对意见。例如Rack

  8. ruby - 在 Ruby 中编写命令行实用程序 - 2

    我想用ruby​​编写一个小的命令行实用程序并将其作为gem分发。我知道安装后,Guard、Sass和Thor等某些gem可以从命令行自行运行。为了让gem像二进制文件一样可用,我需要在我的gemspec中指定什么。 最佳答案 Gem::Specification.newdo|s|...s.executable='name_of_executable'...endhttp://docs.rubygems.org/read/chapter/20 关于ruby-在Ruby中编写命令行实用程序

  9. ruby - 将 Bootstrap Less 添加到 Sinatra - 2

    我有一个ModularSinatra应用程序,我正在尝试将Bootstrap添加到应用程序中。get'/bootstrap/application.css'doless:"bootstrap/bootstrap"end我在views/bootstrap中有所有less文件,包括bootstrap.less。我收到这个错误:Less::ParseErrorat/bootstrap/application.css'reset.less'wasn'tfound.Bootstrap.less的第一行是://CSSReset@import"reset.less";我尝试了所有不同的路径格式,但它

  10. ruby-on-rails - 如何在 ruby​​ 中使用两个参数异步运行 exe? - 2

    exe应该在我打开页面时运行。异步进程需要运行。有什么方法可以在ruby​​中使用两个参数异步运行exe吗?我已经尝试过ruby​​命令-system()、exec()但它正在等待过程完成。我需要用参数启动exe,无需等待进程完成是否有任何ruby​​gems会支持我的问题? 最佳答案 您可以使用Process.spawn和Process.wait2:pid=Process.spawn'your.exe','--option'#Later...pid,status=Process.wait2pid您的程序将作为解释器的子进程执行。除

随机推荐