Что такое фикстуры? Как контролировать объем БД при большом количестве фикстур?

Последние изменения: 04.07.2025
Фикстуры - это повторяющиеся блоки кода, которые выполняются до/после самого теста, setup, beforeEach, beforeAll, teardown и afterEach

Фикстуры складываются в файлы -container.json и хранятся в базе данных ТестОпс в таблице test_fixture_result

В запуске, в результатах теста, выглядят фикстуры так:

Когда запуск закроется, в тест кейс просачивается только блок "Тело теста" т.к. только он является частью сценария

Глобально о том, что такое фикстуры можно ознакомиться, например, в разделе документации на примере Python
https://docs.pytest.org/en/7.1.x/how-to/fixtures.html

Контроль размера таблиц содержащих в себе фикстуры

Для инстансов, в которых проекты/команды работают с Python тестами, бывает частой проблемой количество генерируемых тестами фикстур, отражающееся на весе базы данных - он резко возрастает
Есть ряд процедур, необходимых для контроля роста базы:

  1. Политики очистки.

    Здесь важно учитывать, что статус имеет значение!
    На примере двух статусов:


    Фикстура предусловия попадет под правило удаления 24 часа
    Фикстура постусловия попадет под правило удаления 12 часов

  2. Настроить автовакуум.

    Удаление политиками очистки оставляет за собой мертвые строки, для того, чтобы дать возможность в эти строки перезаписывать данные, необходимо производить vacuum
    Более подробно описано в данном разделе базы знаний https://help.qatools.ru/knowledge_base/item/338637?sid=71406

  3. Банально пересмотреть проекты и где возможно сократить количество генерируемых фикстур.


Помогла ли вам статья?