Устранение неполадок модульных тестов базы данных SQL Server
При работе с тестированиями модулей SQL Server для базы данных у вас могут возникнуть проблемы, описанные в этом разделе:
Изменения тестирования модулей и файла App.Config не учитываются при выполнении тестирований модулей
При выполнении тестирований модулей база данных развертывается в непредвиденном расположении
Истечение времени ожидания при выполнении тестов единиц базы данных
Изменения тестирования модулей и файла App.Config не учитываются при выполнении тестирований модулей
Если в тестовом проекте в файл App.Config вносятся изменения, для вступления этих изменений в силу проект необходимо построить повторно. Сюда также входят изменения, которые вносятся в файл App.Config с помощью диалогового окна Конфигурация теста SQL Server. Если не выполнить повторное построение проекта тестов, изменения не будут приведены при запуске модульных тестов.
При выполнении тестирований модулей база данных развертывается в непредвиденном месте
При развертывании базы данных из проекта базы данных, когда выполняются модульные тесты, база данных развертывается с помощью данных строки подключения, заданной в конфигурации тестирования модулей. Данные подключения, указанные в свойствах "Отладка" проекта базы данных, для этой задачи не используются, что позволяет выполнять тестирования модулей SQL Server разных экземпляров одной и той же базы данных.
Истечение времени ожидания при выполнении тестов единиц базы данных
Если выполнить тесты единиц базы данных не удается из-за истечения времени ожидания, можно увеличить период времени ожидания, внеся изменение в файл app.config тестового проекта. Время ожидания подключения, заданное в строке подключения, указывает, сколько можно ждать, когда тестирование модулей устанавливает соединение с сервером. Время ожидания команды, которое должно задаваться непосредственно в файле app.config, указывает, сколько можно ждать в то время, когда тестирование модулей выполняет скрипт Transact-SQL. Если вы испытываете проблемы с тестированиями модулей, на выполнение которых требуется длительное время, попробуйте увеличить значение времени ожидания команды в контексте соответствующего элемента. Например, чтобы задать время ожидания команды в 120 секунд для элемента PrivilegedContext, внесите в файл app.config следующие изменения:
<SqlUnitTesting_VS2010>
<DatabaseDeployment DatabaseProjectFileName="..\..\..\..\..\..\Visual Studio 2010\Projects\Database10\Database10\AdventureWorks.sqlproj"
Configuration="Debug" />
<DataGeneration ClearDatabase="true" />
<ExecutionContext Provider="System.Data.SqlClient" ConnectionString="Data Source=(LocalDB)\Projects;Initial Catalog=AdventureWorks_Test;Integrated Security=True;Pooling=False"
CommandTimeout="30" />
<PrivilegedContext Provider="System.Data.SqlClient" ConnectionString="Data Source=(LocalDB)\Projects;Initial Catalog=AdventureWorks_Test;Integrated Security=True;Pooling=False"
CommandTimeout="120" />
</SqlUnitTesting_VS2010>
См. также:
Руководство. создавать модульные тесты SQL Server для функций, триггеров и хранимых процедур
Руководство. Настройка запуска модульного теста SQL Server