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

Тестирование схемы базы данных

Как упоминалось ранее, это включает тестирование каждого объекта в Схеме.

Проверка баз данных и устройств

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

Проверка таблиц, столбцов, столбцов

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

  • Имя всех таблиц в базе данных
  • Имена столбцов для каждой таблицы
  • Типы столбцов для каждой таблицы
  • Значение NULL отмечено или нет.
  • Независимо от того, привязан ли по умолчанию столбец таблицы
  • Определения правил для исправления имен таблиц и привилегий доступа

Ключ и указатели

Проверьте ключ и индексы в каждой таблице -

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

Тестирование хранимых процедур

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

  • Название хранимой процедуры
  • Имена параметров, типы параметров и т. д.
  • Выходной сигнал - вывод содержит много записей. Выполняются нулевые строки или извлекаются только несколько записей.
  • Какова функция хранимой процедуры и что хранимая процедура не должна делать?
  • Передача выборочных входных запросов для проверки того, хранит ли хранимая процедура правильные данные.
  • Параметры хранимой процедуры. Вызовите хранимую процедуру с граничными данными и действительными данными. Сделайте каждый параметр недействительным один раз и выполните процедуру.
  • Возвращаемые значения - проверьте значения, возвращаемые хранимой процедурой. В случае сбоя необходимо вернуть ненулевое значение.
  • Проверка сообщений об ошибках - внесение изменений таким образом, что хранимая процедура не работает и генерирует каждое сообщение об ошибке хотя бы один раз. Проверяйте все сценарии исключений, если предопределенное сообщение об ошибке отсутствует.

Тесты триггера

В тесте триггера тестер должен выполнять следующие задачи:

  • Убедитесь, что имя триггера верное.
  • Подтвердите запуск триггера, если он создан для определенного столбца таблицы.
  • Проверка обновлений триггера.
  • Обновите запись с действительными данными.
  • Обновите запись с недопустимыми данными и покройте каждую ошибку запуска.
  • Обновите запись, когда она по-прежнему ссылается на строку в другой таблице.
  • Обеспечьте откаты транзакций при возникновении сбоя.
  • Узнайте, в каких случаях триггер не должен откатывать транзакции.

Сценарии установки сервера

Должны быть выполнены два типа тестов -

  • Настройка базы данных с нуля и
  • Чтобы настроить существующую базу данных.

Интеграционные тесты SQL Server

Тестирование интеграции должно проводиться после завершения тестирования компонентов.

  • Хранимые процедуры следует интенсивно вызывать для выбора, вставки, обновления и удаления записей в разных таблицах, чтобы найти конфликты и несовместимость.
  • Любые конфликты между схемой и триггерами.
  • Любые конфликты между хранимыми процедурами и схемой.
  • Любые конфликты между хранимыми процедурами и триггерами.

Функциональный метод тестирования

Функциональное тестирование может быть выполнено путем деления базы данных на модули по функциональности. Функциональность состоит из двух типов:

  • Тип 1 - При тестировании типа 1 узнайте об особенностях проекта. Для каждой важной функции найдите схемы, триггеры и хранимые процедуры, ответственные за реализацию этой функции, и поместите их в функциональную группу. Затем проверьте каждую группу вместе.
  • Тип 2 - при тестировании типа 2 граница функциональных групп в фоновом режиме не очевидна. Вы можете проверить поток данных и посмотреть, где вы можете проверить данные. Начните с front-end.

Происходит следующий процесс:

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

Стресс-тестирование

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

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

Контрольное тестирование

Если в вашей базе данных нет каких-либо проблем с данными или ошибок, можно проверить работоспособность системы. Низкую производительность системы можно найти в тестовом тестировании, проверив приведенные ниже параметры -

  • Производительность системы
  • Определите наиболее вероятные функции / функции
  • Сроки - максимальное время, минимальное время и среднее время выполнения функций
  • Объем доступа

Тестирование базы данных через интерфейс

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

  • Записывайте запросы из внешнего интерфейса и отправляйте запросы.
  • Подберите существующую запись, измените значения в некоторых полях и сохраните запись. (Он включает в себя инструкцию UPDATE или обновленные хранимые процедуры и триггеры обновления.)
  • Вставьте новый элемент меню в окне интерфейса. Заполните информацию и сохраните запись. (Он включает в себя инструкции INSERT или встроенные хранимые процедуры и триггеры удаления.)
  • Поднимите существующую запись, нажмите кнопку DELETE или REMOVE и подтвердите удаление. (Он включает в себя инструкцию DELETE или удаленные хранимые процедуры и триггеры удаления.)
  • Повторите эти тестовые тесты с недопустимыми данными и посмотрите, как реагирует база данных.