Не удается найти ключевые «родинки»

#moles #pex-and-moles

#родинки #pex-и-родинки

Вопрос:

Я создаю проект модульного тестирования для своего решения и использую родинки, чтобы обойти все считывание данных. Когда сегодня я запускаю все тесты, в конце результатом была ошибка, подобная этой «тип хоста «Родинки» не может быть загружен: ключ «Родинки» не может быть найден». для каждого теста, который содержит атрибут HostType («Родинки»).

Я не понимаю причины проблемы, потому что я использую родинки трехмесячной давности, и у меня никогда не было такой проблемы.

Спасибо!!!

Ответ №1:

Это очень старый вопрос, и спрашивающий, вероятно, уже нашел решение, но поскольку это один из первых результатов для этой ошибки в Google, вот что я нашел:

Я (и многие другие, по-видимому) столкнулись с этой проблемой при запуске 64-разрядных тестов, которые зависят от родинок.

Во-первых, убедитесь, что у вас установлена правильная «разрядность» родинок. Существуют x86 и x64 версии платформы moles. По моему опыту, 32-разрядная платформа, установленная на 64-разрядной машине, на самом деле будет выглядеть так, как будто все работает правильно, но ваши тесты не будут выполняться. Вы можете установить 64-разрядную платформу здесь:

64-разрядная платформа Moles

Я рекомендую закрыть VS 2010 перед установкой, но я не знаю, имеет ли это какое-либо значение.

Далее, убедитесь, так или иначе, что ваши тесты, размещенные на родинках, используют 64-разрядную версию, если это необходимо. Для достижения этой цели я оставил свой тестовый хост «По умолчанию», но установил следующее в файле AssemblyInfo.cs моего тестового проекта:

 [assembly: MolesAssemblySettings(Bitness = MolesBitness.x64)]
  

Затем, только для тестов, которые я хотел запустить в Moles, я добавил этот атрибут в метод тестирования:

 [HostType("Moles")]  
  

После этого у меня все заработало.