C ++ подпрограмма для удаления данных из базы данных - PullRequest
0 голосов
/ 28 февраля 2012

Существует ли в googletest механизм, позволяющий тесту очищать данные даже после сбоя теста (код выдает исключение и останавливает дальнейшее выполнение (очистку данных) в случае неудачи теста.

Спасибо!

Ответы [ 2 ]

2 голосов
/ 28 февраля 2012

Запуск тестов на временной базе данных в памяти .

0 голосов
/ 28 февраля 2012

Поскольку SQLite работает из одного файла, вы можете использовать SetUp() в тестовом приборе для копирования предварительно сконфигурированного файла базы данных туда, где ваша программа ожидает, что база данных будет перезаписывать файл базы данных времени выполнения с предварительно сконфигурированным. перед каждым испытанием .

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

...