Поделиться через


Проверка кода базы данных при помощи модульных тестов

Модульные тесты базы данных можно использовать для определения базового состояния базы данных и проверки любых последующих изменений, вносимых в объекты базы данных. Перед определением базового состояния необходимо создать проект базы данных. Затем создайте тестовый проект и запишите набор тестов Transact-SQL для выполнения объектами базы данных. С помощью этих тестов в изолированной среде разработки можно проверить правильность поведения объектов перед их возвратом в систему управления версиями.

Можно создать тесты, проверяющие изменения в любом объекте базы данных. Кроме того, можно автоматически создать заглушки кода Transact-SQL, проверяющие функции, триггеры и хранимые процедуры базы данных.

Примечание

Модульные тесты базы данных можно создать и выполнить, не открывая проект базы данных.Однако если требуется автоматически создать скрипты тестов для проверки конкретных объектов базы данных проекта, необходимо открыть проект базы данных, содержащий объекты, которые требуется проверить.

При изменении схемы базы данных пользователем или членами команды можно использовать эти тесты для проверки того, привели ли эти изменения к нарушению существующей функциональности. Модульные тесты базы данных можно создать в дополнение к модульным тестам программного обеспечения, созданным его разработчиками. Для проверки общего поведения приложения необходимо выполнить оба набора тестов.

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

Важно!

Модульные тесты базы данных можно создать, изменить и выполнить в Visual Studio Premium и Visual Studio Ultimate.В Visual Studio 2010 Professional можно выполнять модульные тесты базы данных, но нельзя создавать и изменять тесты в конструкторе.

Общие задачи

В следующей таблице приведены описания типовых задач, которые могут оказаться полезными при реализации этого сценария, и ссылки на более подробные сведения о выполнении этих задач.

Общие задачи

Справочные материалы

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

Заполнения базы данных тестовыми данными. Перед выполнением тестов объектов базы объектов необходимо иметь данные в базе данных. Наиболее распространенным способом создания тестовых данных является использование одного или нескольких генераторов данных. Также можно заполнить базу данных данными ссылки в скрипте, выполняемом после развертывания, или синхронизировать данные в базе данных с данными другой базы данных.

Определение модульных тестов базы данных. Модульные тесты базы данных следует создавать в отдельном проекте. Затем можно настроить параметры для этого проекта и определить одно или несколько тестовых условий для каждого теста.

Выполнение модульных тестов базы данных. После определения одного или нескольких модульных тестов, их можно запустить, выполнить отладку проблем и изучить результаты тестов.

Управление группами тестов. Тесты можно упорядочить в группы, если обычно они должны выполняться в одно и то же время. Списки тестов по-прежнему поддерживаются, но для новых групп тестов следует рассматривать категории тестов. Например, можно создать категорию тестов для тестов определенных триггеров или для всех объектов конкретной схемы.

Возврат тестовых проектов и тестов в систему управления версиями. После выполнения тестов и проверки правильности их работы следует выполнить возврат тестового проекта и всех связанных файлов в систему управления версиями, чтобы все члены команды могли запускать эти тесты.

Определение пользовательских условий тестов. Можно создать пользовательские условия тестов, если необходимо проверить поведение, которое не охватывается набором условий тестов по умолчанию. Необходимо распределить эти условия всем членам команды, которым требуется выполнить тесты, использующие новые условия.

Обновление существующих модульных тестов. При наличии модульных тестов, созданных в предыдущей версии Visual Studio, их необходимо обновить, прежде чем они будут построены и успешно выполнены в данном выпуске.

ПримечаниеПримечание
При открытии решения, содержащего проект базы данных и проект модульных тестов базы данных предыдущей версии Visual Studio, пользователю будет предложено обновить эти проекты.При открытии решения, содержащего только проект модульных тестов базы данных, этот проект необходимо обновить вручную.

Устранение неполадок. Дополнительные сведения об устранении обычных неполадок, связанных с модульными тестами базы данных.

Связанные сценарии