Как тестировать базы данных, какой подход использовать.

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

И вопрос номер два: можно ли это как то автоматизировать, если да, то как?

А что вообще значит “тестировать базу данных”?
Что именно вы хотите протестировать?

Тестируют обычно приложение (сервис), а он состоит из нескольких компонент, в т.ч. базы данных. Но тестируют-то приложение целиком.

1 лайк

Может они свою БД пилят.

1 лайк

Тестировать стоит на консистентность данных в базе. Имея только одну базу, можно описать взаимосвязи обьектов, их структуру и и т.д. В результате будет state машина. Сверяя данные в базе и состояния машины можно проводить проверку данных.

Занимаюсь тестированием проекта, в котором 99% логики - это хранимые tsql процедуры. для таких проектов тестирование - это формально запуск процессинга приложения и проверка состояния таблиц и данных в определенный момент времени.

Это очень редкий сценарий, большинству бизнесов хватает Active Record паттерна и ORM, где консистентность данных обеспечивается фреймворком. в общем случае вам лучше тестировать поведение бизнес логики (которая находится вне базы данных), а данные в базе считать частью проверки.