Skip to content

Latest commit

 

History

History

e2e-tests

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Клиент для e2e-тестов backend-сервера

Структура проекта

  • tests - папка со всеми тестами
    • room - тесты для сущности Room
    • conftest.py - файл с фикстурами для pytest
    • models.py - файл с моделями сущностей и Input-ов
    • utils.py - функции с шаблонными запросами, облегчающие тестирование
  • config.yaml - конфиг с настройками (описаны ниже)
  • requirements.txt - файл с зависимостями Python

Настройки

  • SERVER_HOST - хост тестируемого сервера
  • SERVER_PORT - порт тестируемого сервера

Настройки задаются в config.yaml и могут быть переопределены при помощи переменных окружения с префиксом DYNACONF (например, DYNACONF_SERVER_HOST)

Как запустить локально

  1. Создать и активировать виртуальное окружение Python
python3 -m venv venv
source venv/bin/activate
  1. Обновить pip и установить зависимости
pip install --upgrade pip
pip install -r ./requirements.txt
  1. Запустить тесты
python -m pytest ./tests

Пример добавления тестов на новую сущность

  1. Добавляем модель сущности и её Input-а (структуры с данными, по которым создается объект сущности) в models.py
  2. В папке tests создаём папку с именем сущности. В ней будем писать все тесты на эту сущность
  3. Для удобства в файле utils.py можно написать функцию, которая будет создавать новый объект сущности и возвращать его модель

Используемые библиотеки

  • pytest - для написания тестов
  • dynaconf - для работы с конфигом