Основные проблемы модульного тестирования VS2012 и TFS2012

Мы используем VS2012 и TFS2012 и пишем модульные тесты для нашего кода. Мы хотим сообщить о покрытии кода, а также использовать файлы .config в наших модульных тестах для тестовых настроек приложений, а также некоторые другие настройки для ведения журнала, настройки библиотеки MS Enterprise и т. Д. И т. Д.

App.config не работает в новой тестовой среде

Новый тестовый фреймворк MS должен быть отличным, но для меня он совсем не так хорош. Как я'Я полагаю, чтобы установить некоторые основные конфигурации в файлах конфигурации, когда новый каркас больше не использует файлы конфигурации?

У нас была проблема с dll в смешанном режиме, и мы нашли исправление: добавление

 

в app.config. Но это не сработало для нашего проекта модульного тестирования. Конфигурационных файлов Becuase больше нет. Поиск в интернете нашел решение »

Проблемы с сборками смешанного режима .Net 2.0 внутри тестовых проектов Visual Studio .Net 4.5.

Это означает редактирование самого файла Visual Studio 11 в каталоге программных файлов, я думаю, это не лучшее решение ....

А как насчет базового набора приложений? Как я должен установить это?

Не используйте файл .testSettings

MS также не рекомендует использовать старый файл .testsettings, так как тогда используется старый тестовый фреймворк. И если я использую файл .testsettings, я не могу настроить покрытие кода в моей службе сборки tfs2012.

Другая проблема состоит в том, что у нас есть код, который требует dll (system.data.sqlite.dll), но только во время выполнения код модуля требует этого dll. Так что ссылка не нужна. Мы исправили это, используя вкладку Deployment в файле testsettings. Но в новой среде вы не должны использовать файл testsettings. У вас есть атрибут [deployitem], если вам нужны файлы. Но атрибут deployitem можно использовать только для метода [testmethod], а не для метода [testinitialize] или [assemblyinitialize]. Но нашему коду нужна dll в методе [testinitialize]. Таким образом, нет никакого способа, чтобы получить DLL на месте.

Просто скопируйте его с помощью File.Copy в методе [assemblyinitialize] (или testinitialize), который не работает.

Добавляем dll как файл в проект и устанавливаемскопировать в выходной каталог ' кКопировать всегда как упоминалось вНастройка модульных тестов с использованием файла .runsettings ' тоже не работает вообще.

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

как решить мою проблему (ы) ??? - Я хочу использовать файлы конфигурации в моем модульном тесте. - Я хочу развернуть некоторые файлы, которые нужно вassemblyinitialise» и / илиclassinitialize» методы. - Я хочу, чтобы покрытие кода на моей ночной сборке TFS2012 было включено.

Ответы на вопрос(1)

Ваш ответ на вопрос