В данной работе мною были написаны тесты для проекта на unittest и pytest.
Коллекция тестов проверяет:
- доступ к страницам и возможность действий для пользователей с разным видом прав;
- корректный возврат ошибок и переадресацию;
- отсутствие смешивания данных разных пользователей;
- уникальность и постраничный вывод данных;
- автоматическое формирование данных в случае, если пользователем они не были указаны;
- сортировку и проверку на запрещённые слова
библиотеки:
Если Python не установлен, скачайте и установите его с официального сайта.
- Версия Python: 3.9 или выше
- Операционная система: Windows / macOS / Linux
Клонировать репозиторий и перейти в него в командной строке:
git clone git@github.com:Apollo297/django_testing.git
cd django_testing
Cоздать и активировать виртуальное окружение:
python3 -m venv env
source env/bin/activate
Установить зависимости из файла requirements.txt:
python3 -m pip install --upgrade pip
pip install -r requirements.txt
Выполнить миграции:
python3 manage.py migrate
Запустить проект:
python3 manage.py runserver
Dev
└── django_testing
├── ya_news
│ ├── news
│ │ ├── fixtures/
│ │ ├── migrations/
│ │ ├── pytest_tests/ <- Директория с тестами pytest для проекта ya_news
│ │ ├── __init__.py
│ │ ├── admin.py
│ │ ├── apps.py
│ │ ├── forms.py
│ │ ├── models.py
│ │ ├── urls.py
│ │ └── views.py
│ ├── templates/
│ ├── yanews/
│ ├── manage.py
│ └── pytest.ini
├── ya_note
│ ├── notes
│ │ ├── migrations/
│ │ ├── tests/ <- Директория с тестами unittest для проекта ya_note
│ │ ├── __init__.py
│ │ ├── admin.py
│ │ ├── apps.py
│ │ ├── forms.py
│ │ ├── models.py
│ │ ├── urls.py
│ │ └── views.py
│ ├── templates/
│ ├── yanote/
│ ├── manage.py
│ └── pytest.ini
├── .gitignore
├── README.md
├── requirements.txt
└── structure_test.py
Автор: Нечепуренко Алексей