# Какие тест-кейсы можно сдать для тестирования баз данных?

Для тестирования баз данных (DB Testing) обычно создаются тест-кейсы, которые проверяют **корректность данных, целостность и производительность**.&#x20;

***

### **1. Тестирование структуры базы данных**

* Проверка **наличия всех таблиц, колонок, индексов и связей**
* Пример тест-кейса:
  * Проверить, что таблица `users` содержит колонки `id`, `name`, `email` и первичный ключ `id`
  * Проверить наличие внешнего ключа `order.user_id → users.id`

***

### **2. Тестирование целостности данных (Data Integrity)**

* Проверка соблюдения **правил целостности**: уникальность, NOT NULL, foreign key
* Примеры тест-кейсов:
  * Добавить запись с существующим `id` и проверить отклонение
  * Проверить, что удаление родительской записи блокируется при наличии связанных дочерних

***

### **3. Тестирование данных (Data Validation / CRUD)**

* Проверка корректности операций **Create, Read, Update, Delete**
* Примеры тест-кейсов:
  * Вставка новой записи и проверка, что данные корректно сохраняются
  * Обновление записи и проверка значения в таблице
  * Удаление записи и проверка, что она удалена

***

### **4. Тестирование запросов и процедур**

* Проверка корректности **SQL-запросов, представлений (views), хранимых процедур**
* Примеры тест-кейсов:
  * SELECT-запрос возвращает правильные данные по заданному условию
  * Хранимая процедура обновляет правильные записи и возвращает корректный результат

***

### **5. Тестирование производительности (Performance / Load)**

* Проверка **скорости работы запросов и индексов**
* Примеры тест-кейсов:
  * SELECT-запрос с большим количеством записей выполняется < X секунд
  * Проверка времени вставки/обновления 1000 записей

***

### **6. Тестирование безопасности**

* Проверка прав доступа и защиты данных
* Примеры тест-кейсов:
  * Пользователь без прав не может удалить запись
  * SQL-инъекции не проходят и вызывают корректную ошибку


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://kaze.gitbook.io/qa-theory/teoriya-ruchnogo-testirovaniya/kakie-test-keisy-mozhno-sdat-dlya-testirovaniya-baz-dannykh.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
