Устранение неполадок модульного тестирования базы данных
При выполнении модульных тестов базы данных могут встретиться описанные в этом разделе проблемы.
Недостаточно разрешений при выполнении модульных тестов или создании тестовых данных
Изменения модульного тестирования и файла App.Config игнорируются при выполнении модульных тестов
Развертывание базы данных в неожиданном целевом расположении при выполнении модульных тестов
Таймауты при выполнении модульных тестов базы данных
Недостаточно разрешений при выполнении модульных тестов или создании тестовых данных
Можно настроить модульный тест для автоматического развертывания базы данных и создания данных. При недостатке разрешений, необходимых для создания данных в целевой базе данных, можно получить ошибку, указывающую лишь на отсутствие разрешений на подключение к базе данных.
Примечание
Чтобы обойти эту проблему, выполните план создания данных вручную.При недостатке разрешений, необходимых для создания данных, такой подход позволит получить более подробное сообщение об ошибке, которое поможет исправить неполадку.
Изменения модульного тестирования и файла App.Config игнорируются при выполнении модульных тестов
При изменении файла App.Config в тестовом проекте этот проект необходимо перестроить, чтобы изменения вступили в силу. Эти изменения включают внесенные в файл App.Config с использованием диалогового окна Project Configuration. Если не перестроить тестовый проект, при выполнении модульных тестов изменения применены не будут.
Развертывание базы данных в неожиданном целевом расположении при выполнении модульных тестов
Если при выполнении модульных тестов производится развертывание базы данных, эта база данных создается с использование информации строки подключения, заданной в конфигурации модульного теста. Информация подключения, заданная в свойствах построения проекта базы данных, не используется для этой задачи, так что можно выполнять разные модульные тесты для различных экземпляров одной базы данных.
Таймауты при выполнении модульных тестов базы данных
Если модульные тесты базы данных завершаются неудачей из-за таймаута, можно увеличить время ожидания, обновив файл app.config в проекте базы данных. Время ожидания строки подключения определяет, как долго следует ожидать подключения модульного теста к серверу. Время ожидания команды определяет, как долго следует ожидать выполнения модульным тестом скрипта Transact-SQL.
Примечание
Для решения этой проблемы задайте большее значение атрибута CommandTimeout в соответствующем элементе Context в файле app.config для тестового проекта.Например, чтобы задать время ожидания 120 секунд для элемента PrivilegedContext, следует обновить файл app.config так:
<DatabaseUnitTesting>
<DatabaseDeployment DatabaseProjectFileName="test.dbproj" Configuration="Debug" />
<DataGeneration DataGenerationFileName="test.dgen" ClearDatabase="true" />
<ExecutionContext Provider="System.Data.SqlClient" ConnectionString="another connection string" />
<PrivilegedContext Provider="System.Data.SqlClient" ConnectionString="test" CommandTimeout="120" />
</DatabaseUnitTesting>
См. также
Задачи
Практическое руководство. Настройка выполнения модульного теста базы данных