Тесты Resharper NUnit не работают с Unity

При запуске модульных тестов NUnit в Resharper я получаю следующую ошибку:

SetUp method failed. SetUp : System.IO.FileNotFoundException : Could not 
load file or assembly 'Microsoft.Practices.Unity, Version=2.0.414.0, 
Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. 
The system cannot find the file specified.

Если я затем «перезапущу неудавшийся модульный тест», они завершатся (хотя это может потребовать много раз повторных запусков). Похоже, что с тех пор, как я обновился до Resharper v8 с v7.

При запуске любого из нескольких приложений, которые мы тестируем, эта ошибка не отображается. Мы используем шаблон ServiceLocator во всем нашем коде.


person Rebecca    schedule 06.08.2014    source источник


Ответы (2)


Кажется, я исправил это в настройках Resharper, заставив каждую сборку иметь свой собственный домен приложений во время выполнения тестов. См. Третий вариант флажка в разделе Resharper -> Параметры -> Инструменты -> Модульное тестирование.

Снимок экрана с параметром модульного тестирования Resharper для отдельных доменов приложений

person Rebecca    schedule 06.08.2014
comment
У меня была аналогичная проблема, и решение, приведенное выше, похоже, устранило ее. Забавно то, что когда я запускаю тесты из контекстного меню решения, все работает нормально. Но повторный запуск из диалогового окна модульного теста завершился неудачно. В любом случае, хорошая находка. Также обнаружено (и увеличено) распараллеливание модульного тестирования только потому, что. - person Daniel Park; 12.11.2014

Вы должны убедиться, что вы использовали первую версию Unity в основном проекте, потому что она должна соответствовать тестируемому проекту и вашему основному проекту, а пока вы должны проверить все библиотеки Unity.

person Oğuzhan Soykan    schedule 06.08.2014
comment
что вы подразумеваете под основным проектом? У нас есть несколько проектов, которые проходят модульное тестирование. При необходимости мы перенаправляем версии Unity в app или web.config. - person Rebecca; 06.08.2014