old_console/README.md
2024-11-02 14:12:45 +03:00

58 lines
No EOL
2.5 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Подготовка к запуску тестов unit, integration, live_firewall
Перед запуском тестов, нужно подготовить базу данных, для этого запускаем:
```bash
DJANGO_SETTINGS_MODULE=console.settings.test python manage.py makemigrations
DJANGO_SETTINGS_MODULE=console.settings.test python manage.py migrate
```
# Запуск тестов unit
Для запуска тестов, нужно активировать виртуальное окружение и запустить:
```bash
pytest --disable-warnings -m unit
```
# Запуск тестов интеграционных
Для запуска интеграционных тестов, вызываем:
```bash
pytest --disable-warnings -m integration
```
При этом, интеграционные можно запускать либо в докере, либо на развернутой виртуалке, тк
они завязаны на внешние сервисы.
# Запуск тестов на живом AIF
Для запуска тестов на живом AIF, вызываем:
```bash
pytest --disable-warnings -m live_firewall
```
Перед каждым запуском теста проводится проверка доступности AIF, в случае если
AIF не доступен тест завершается с состоянием False
После выполенения последнего теста "test_live_set_firewall_suricata" AIF уходит в
перезагрузку длительностью ~40-60 сек.
**Важно! Pipline запускает тесты последовательно, согласн очереди запросов от пользователей GitLab,
управляет этим отдельный раннер**
# Оценка покрытия тестов
Чтобы оценить общее покрытие кода тестами, нужно в docker запустить следующие команды:
```bash
coverage run -m pytest --disable-warnings
coverage report
```
Для HTML результата:
```bash
coverage html
```
# Отключение тестов при push'e и merge request'e
Тесты в пайплайне запускаются автоматически. Чтобы тесты при push'e и merge request'e не запускались,
необходимо указать в сообщении коммита ключ: #no_test