Sto usando un concetto proof-of-semplice falsi di prova NUnit:Microsoft.Fakes non verrà eseguito in normali test di unità contesti
[Test]
public void TestFakes()
{
using (var ctx = ShimsContext.Create())
{
System.Fakes.ShimDateTime.NowGet =() => { return new DateTime(2000, 1, 1); };
Assert.That(DateTime.Now.Year, Is.EqualTo(2000));
}
}
Questo test viene eseguito in Visual Studio Test Explorer, ma doesn' t run in:
- NUnit GUI console
- NUnit
- Il test corridore JetBrains (dotCover O ReSharper)
- testd Test riven.net corridore
In ognuno di questi, ricevo il seguente errore:
Microsoft.QualityTools.Testing.Fakes.UnitTestIsolation.UnitTestIsolationException : Failed to resolve profiler path from COR_PROFILER_PATH and COR_PROFILER environment variables
Quando rifletto in quell'assemblea, sembra che è alla ricerca di Intellitrace, una caratteristica VS Ultimate-solo - Ho solo installato Premium.
Qualche suggerimento su come ovviare a questo (usiamo il corridore NUnit sui nostri server di build, quindi questo è un bloccante di utilizzare falsi)
Hai provato a impostare le variabili di ambiente che sembra manchi? –
@DanielHilgarth no, perché non so cosa avrei potuto impostare a (impostandolo a stringhe arbitrarie non aiuta, FWIW) – pattermeister
installare Visual Studio 2012 Update 2. È quindi possibile utilizzare MS falsi senza dover avere Ultimate edition, L'edizione premium sarà sufficiente. http://support.microsoft.com/kb/2797912 http://blogs.msdn.com/b/visualstudioalm/archive/2013/02/08/febbraio-ctp-for-visual-studio-update-2.aspx #fakes –