c# - UnitTestIsolationException: Throws Exception while running Shims test in Release/Debug mode -
i trying run unit test using microsoft shims, throws me exception in shims.context.create();
method.
environment: vs 2012, win2k8 r2
namespace myshimsunittest { [testclass] public class myunittest { [testmethod] public void getcurrentyear() { using (microsoft.qualitytools.testing.fakes.shimscontext.create()) { // logic... } } } }
detailed exception:
result message: test method myshimsunittest.myunittest.getcurrentyear threw exception: microsoft.qualitytools.testing.fakes.unittestisolation.unittestisolationexception: unittestisolation instrumentation failed initialize. please restart visual studio , rerun test result stacktrace: @ microsoft.qualitytools.testing.fakes.unittestisolation.unittestisolationruntime.initializeunittestisolationinstrumentationprovider() @ microsoft.qualitytools.testing.fakes.shims.shimruntime.createcontext() @ microsoft.qualitytools.testing.fakes.shimscontext.create() @ myshimsunittest.myunittest.getcurrentyear()
shims require runtime instrumentation performed intellitrace profiler. test runner responsible setting environment variables required clr load profiler providing list of types profiler must instrument shims. unittestisolationexception thrown when shimruntime unable locate , attach intellitrace profiler, expects loaded clr.
as jin-wook mentioned earlier, problem occurs when test executed runner not perform required profiler initialization. test explorer , vstest.console.exe 2 such runners ship visual studio 2012. @ time, visual studio test runners not perform required profiler instrumentation when running tests in "legacy" mode, happens when have .testsettings file selected run or .runsettings file forces legacy mode.
you may able use third-party test runners support profiler instrumentation required shims.
Comments
Post a Comment