Как новичок в практической разработке, основанной на тестах, я часто оказываюсь в затруднительном положении относительно того, как unit test постоянство базы данных.
Я знаю, что технически это будет тест интеграции (а не unit test), но я хочу найти лучшие стратегии для следующего:
- Тестирование запросов.
- Тестирование вставок. Как я узнаю, что вставка прошла неправильно, если она не удалась? Я могу проверить его, вставив и затем запросив, но как я могу узнать, что запрос не был прав?
- Тестирование обновлений и удалений - так же, как и тестовые вставки
Каковы наилучшие методы для этого?
Что касается тестирования SQL: я знаю, что это можно сделать, но если я использую O/R Mapper, например NHibernate, он прикрепляет некоторые именованные бородавки в псевдонимах, используемых для выходных запросов, и, поскольку это несколько непредсказуемо, я не уверен, что смогу проверить это.
Должен ли я просто отказаться от всего и просто доверять NHibernate? Я не уверен, что разумный.