Миграция с NUnit на Team System ошибка в конфигурации библиотеки предприятия

Я получаю эту ошибку при переносе NUnit в Team System при запуске некоторых тестов в Visual Studio:

Метод теста XXX.XXX.Data.Tests.Path.Method> выдает исключение:  System.Configuration.ConfigurationException: недопустимое имя раздела. Раздел "dataConfiguration" не существует в запрошенном файле конфигурации "C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\vstesthost.exe.Config" или в файле "c:\WINDOWS\Microsoft.NET\Framework\". v2.0.50727\Config\machine.config. Убедитесь, что раздел конфигурации 'enterpriseLibrary.configurationSections' существует в одном из файлов и что определен раздел 'dataConfiguration'.

  1. Мы предполагаем, что это корпоративная библиотека, что необходимо в
    "раздел конфигурации" для моих тестов для работы?
  2. Где обычно можно найти файл конфигурации в командной системе?
  3. Кроме того, почему приложение все еще работает, а тесты - нет?

1 ответ

Решение

Похоже, он не может найти файл app.config/web.config.

С MSTest он не тестируется в обычном каталоге "output". Как следствие, флаги "копировать в выходной каталог" (и т. Д.) Ничего не делают. Вам необходимо указать, какие файлы необходимо развернуть в тестовой папке; Есть два способа:

  • отредактируйте файл testrunconfig и добавьте файлы в список развертывания
  • добавить [DeploymentItem] приписать свой тест, сообщив, какие файлы необходимы

Мне не очень нравится ни один из этих подходов - на самом деле, я склонен использовать TestDriven.NET для запуска тестов, что делает так, как вы ожидаете.

Конечно, TestDriven.NET также будет запускать ваши тесты NUnit в среде IDE, включая покрытие кода и т. Д., И тогда возникнет вопрос: зачем менять существующие тесты, если они могут работать в среде IDE? И очевидный ответ: "Мы заплатили за MSTest, а TestDriven.NET не бесплатен"...

Другие вопросы по тегам