Проблема с модульным тестированием надстройки Revit 2012 в Visual Studio 2010 - PullRequest
0 голосов
/ 20 июля 2011

Я пытаюсь создать модульный тест в VS2010 для надстройки Revit, которую я разработал. Проблема в том, что когда я создаю модульный тест для метода, а затем запускаю этот тест, я получаю следующее сообщение:

Метод теста TestProject1.SimpleTestCommandTest.ExecuteTest вызвал исключение: System.IO.FileNotFoundException: Не удалось загрузить файл или сборку RevitAPIUI.dll или одну из ее зависимостей. Указанный модуль не найден.

RevitAPIUI.dll правильно добавлен в ссылки на надстройку Revit, а также в ссылки на тестовый проект.

Есть идеи, что мне сделать, чтобы это исправить?

Ответы [ 3 ]

1 голос
/ 17 июля 2013

Возможно, вы захотите взглянуть на этот блог, который Джереми Таммик недавно опубликовал.

http://thebuildingcoder.typepad.com/blog/2013/07/revit-add-in-unit-testing.html

0 голосов
/ 27 июля 2011

ПРИМЕЧАНИЕ. Это повторение моего ответа на тот же вопрос на форумах Autodesk, который я публикую здесь для пользователей SO, которые могут там не заглядывать. Заранее извиняюсь, если это неуместно.

DLL-библиотеки Revit API зависят от среды выполнения Visual C ++. Вы должны убедиться, что среда выполнения VC ++ загружена в процесс. Простое разрешение библиотек VC ++ в обработчике событий AssemblyResolve приводит к ошибке, которая говорит о том, что среда выполнения не была загружена должным образом. У меня не хватило времени, и я не пошел дальше.

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

0 голосов
/ 20 июля 2011

Убедитесь, что CopyLocal имеет значение true в свойствах этой ссылки.

...