Тестирование базы данных - обзор
Тестирование базы данных включает в себя проверку достоверности данных, проверку целостности данных, проверку производительности, связанную с базой данных, и тестирование процедур, триггеров и функций в базе данных.
пример
Рассмотрим приложение, которое фиксирует повседневные сведения о транзакциях для пользователей и хранит эти данные в базе данных. С точки зрения тестирования базы данных должны быть выполнены следующие проверки:
Информация о транзакциях из приложения должна храниться в базе данных и предоставлять пользователю правильную информацию.
Информация не должна быть потеряна при загрузке в базу данных.
Следует сохранять только завершенные транзакции, а все незавершенные операции должны быть прерваны приложением.
Авторизация доступа к базе данных должна быть сохранена. Запрещается предоставлять несанкционированный или несанкционированный доступ к пользовательской информации.
Почему вам нужно проводить тестирование базы данных?
Есть несколько причин, по которым выполняется тестирование базы данных. Существует необходимость в выполнении проверки целостности, валидации и согласованности данных в базе данных, поскольку серверная система отвечает за хранение данных и доступ к ней имеет множество целей.
Ниже приведены некоторые распространенные причины для тестирования базы данных -
Чтобы упростить вызовы серверной части базы данных, разработчики увеличивают использование View а также Stored Процедуры.
Эти Stored процедуры и Viewsсодержат важные задачи, такие как вставка сведений о клиенте (имя, контактная информация и т. д.) и данных о продажах. Эти задачи нужно тестировать на нескольких уровнях.
Black-box testingвыполнение на интерфейсе важно, но затрудняет локализацию проблемы. Тестирование в бэкэнд-системе повышает надежность данных. Вот почему тестирование базы данных проводится на серверной системе.
В базе данных данные поступают из нескольких приложений, и есть вероятность, что вредоносные или неверные данные хранятся в базе данных. Следовательно, есть необходимость регулярно проверять компоненты базы данных. Кроме того, следует регулярно проверять целостность и непротиворечивость данных.
Тестирование базы данных против тестирования переднего плана
Тестирование базы данных отличается от тестирования интерфейса пользователя. В следующей таблице показаны ключевые различия -
Тестирование базы данных | Тестирование пользовательского интерфейса |
---|---|
Тестирование базы данных известно как проверка данных и проверка целостности или внутреннее тестирование. |
Тестирование пользовательского интерфейса или интерфейсное тестирование также называется тестированием приложений или тестированием графического интерфейса. |
Тестирование базы данных включает тестирование внутренних компонентов, которые не видны пользователям. Сюда входят компоненты базы данных и системы СУБД, такие как My SQL, Oracle. |
Тестирование пользовательского интерфейса включает в себя проверку функциональности приложения и его компонентов, таких как формы, графики, меню, отчеты и т. Д. Эти компоненты создаются с использованием интерфейсных инструментов разработки, таких как VB.net, C #, Delphi и т. Д. |
Тестирование базы данных включает проверку хранимых процедур, представлений, схем в базе данных, таблиц, индексов, ключей, триггеров, проверки данных и проверку согласованности данных. |
Тестирование пользовательского интерфейса включает проверку функциональности приложения, кнопок, форм и полей, календаря и изображений, навигации с одной страницы на другую и общей функциональности приложения. |
Для выполнения тестирования БД тестировщику необходимо доскональное знание концепции базы данных, такой как процедуры и функции, представления, индексы, ключи и хороший практический SQL. |
Для выполнения тестирования пользовательского интерфейса тестировщику необходимо хорошее понимание бизнес-требований, функциональные знания приложений, кодирование и т. Д. |
Данные поступают из нескольких разнородных источников данных через веб-приложения, приложения интрасети и различные другие приложения. |
Данные вводятся вручную в приложения. Он включает в себя функциональное тестирование интерфейсных приложений. |