UnitTestIsolationException: не удалось разрешить путь профилировщика из переменных среды COR_PROFILER_PATH и COR_PROFILER - PullRequest
0 голосов
/ 27 сентября 2018

Я использую VS2015 с обновлением 3. У меня есть простой проект модульного тестирования hello world, где я пытаюсь получить shimContext, ниже приведен фрагмент кода.Я получаю исключение в shimContext для создания вызова: *

Microsoft.QualityTools.Testing.Fakes.UnitTestIsolation.UnitTestIsolationException 'произошло в Microsoft.QualityTools.Testing.Fakes.dll Дополнительная информация: не удалось разрешитьпуть профилировщика из переменных окружения COR_PROFILER_PATH и COR_PROFILER.

*

 [TestClass]
    public class UnitTest1
    {

        private IDisposable shimsContext;

        [TestMethod]
        public void TestMethod1()
        {
            shimsContext = ShimsContext.Create();
            Assert.IsTrue(true);
        }
    }

Я просмотрел множество статей о StackOverflow, MSDN относительно предлагаемых обходных путей, и ни одна из них, похоже, не решиласьпроблема.Ниже приведен список обходных путей, которые я пробовал.

  1. Чтобы использовать модуль модульного тестирования, который инициализирует IntelliTrace во время запуска (использовались два плагина CodeRush и Resharper, оба выдают одно и то же исключение).
  2. Комусвяжите файл .runsettings с ForcedLegacyMode - True, это также привело к тому же исключению.
  3. Образец демонстрационного модульного теста, пытавшегося создать shimsContext, был создан, чтобы проверить, не связана ли проблема со средой.

  4. Запустите vstest.console.exe из командной строки, чтобы проверить, выполняются ли тесты в командной строке, это также дало то же исключение.

Любые предложения / советы?

Спасибо - Keerti.

1 Ответ

0 голосов
/ 29 октября 2018

Хорошо, после нескольких дней анализа пришлось обновить mscorlib.fakes, чтобы преодолеть исключение, связанное с COR_PROFILER / UnitTestingIsolationException.

Ниже приведен снимок измененного mscorlib.fakes, если вы заметилинам пришлось остановить каркас shims / stub от генерации заглушек для трассировки / профилирования, точная причина, по которой он не может сгенерировать, до сих пор неясна, но после добавления этих строк в мой поддельный файл mscorlib создание shimsContext работает нормально.

<Fakes xmlns="http://schemas.microsoft.com/fakes/2011/">
  <Assembly Name="mscorlib" Version="4.0.0.0"/>
  <StubGeneration>
    <Remove FullName="System.Diagnostics.Tracing"/>
    <Remove FullName="System.Text.Encoding"/>
    <Remove FullName="System.Security.Cryptography" />
  </StubGeneration>
</Fakes>
...