32

According to the two articles below on VS 2012 and Microsoft Fakes Test Framework, I should be able to right click on an assembly in my test project's references and choose "Add Fakes Assembly" to create a new Microsoft Fakes Framework Assembly in Visual Studio 11 / 2012. However I do not find the context menu item in VS 2012 RC Professional where it should be. I may need to reference the Microsoft.QualityTools.Testing.Fakes assembly, but I cannot find it in the add reference search either. Has the required menu changed since beta? Do I need to install an extension?

How do I add a fakes assembly in VS 2012 Professional RC?

Articles referenced:

Dan Sorensen
  • 11,403
  • 19
  • 67
  • 100
  • Are you sure that is available under Professional, not only under ultimate? – TomTom Jun 13 '12 at 06:40
  • Very good question, and likely the answer. I was running VS 11 Ultimate Developer Preview, and then upgraded (and downgraded) to VS 2012 Professional as that is more likely what I'll be licensed for. I don't see that feature now. Don't know if it was renamed, moved, or a SKU issue. – Dan Sorensen Jun 13 '12 at 06:44
  • Given that I never installed profesional all I can tell you that it is there ;) – TomTom Jun 13 '12 at 10:01

1 Answers1

33

Update: VS2012 Update 2 will include Fakes support in Premium.

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

I asked this question in the Microsoft Connect portal...and the answer is disappointing:

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.

My detailed question was:

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.

Community
  • 1
  • 1
Chai
  • 468
  • 4
  • 5
  • 8
    Product edition comparison confirms that it is only available in Ultimate. [http://www.microsoft.com/visualstudio/11/en-us/products/compare](http://www.microsoft.com/visualstudio/11/en-us/products/compare) Just expand the "Testing Tools" section. – AlGonzalez Jul 16 '12 at 14:32
  • 1
    Someone had some bad luck thinking up that one. I would like to see a chart of what versions most developers use in the industry today. I'm betting Ultimate is the smallest pie... – Jontatas Jan 02 '13 at 13:37
  • 1
    How strange... PowerMock is free for Java, but Fakes is only available in Ultimate. – Christo Jan 30 '13 at 15:06
  • Way to go Microsoft, I really thought you had my back there :-( – 7wp Jun 09 '14 at 19:26
  • Nice one Microsoft! Moq here I come. – Caltor Jan 17 '17 at 14:19