chat-bots:testing_code_quality
This is an old revision of the document!
Table of Contents
Tests, code quality
Д/З
Reading assignment (прочитать и понять)
Практика (для зачета)
Данное Д/з должно быть единственным в вашем гитхаб репозитории. Git ветка - главна (main / master). Это нужно для простоты настройки Github actions (CI / CD). Поэтому если у Вас все Д/з в одном репозитории в отдельных каталогах, то рекомендуется для данного Д/з создать новый репозиторий.
Задача: взять Pizza bot из прошлого Д/з, добавить в него инструменты качества кода (black, ruff, pytest), написать минимум 2-3 теста, и настроить Github Action для CI/CD.
Требуется реализовать
- Получите ✅ по предыдущему Д/з Pizza bot
- Если в Вашем репозитории лежит несколько Д/з в разных каталогах, то требуется создать новый репозиторий и скопировать в него проект Pizza bot (протестировать, что проект запускается и работает корректно)
- Добавить black в requirements.txt. Запустить black на весь проект. Посмотреть git diff и осознать как black исправил код. Сделать коммит с сообщением “black reformat whole project”.
- Добавить ruff в requirements.txt. Запустить ruff на весь проект. Посмотреть git diff и осознать как ruff исправил код / подсветил ошибки. Исправить все то, что не смог ruff. При крайней необходимости можно заигнорировать строчку. To ignore a specific violation on a line, append # noqa: {code} (e.g., # noqa: F841) to the end of the line. Сделать коммит с сообщением “ruff fix whole project”.
- Сделать рефакторинг проекта, применив инверсию зависимостей для telegram_api_client и database_client (см. запись лекции). Проверить, что Pizza bot по-прежнему корректно работает. Запустить и применить исправления black и ruff.
- Добавить pytest в requirements.txt. Написать минимум 2-3 теста.Запустить и применить исправления black и ruff.
- Добавить в проект конфиг для Github Actions. При каждом git pish а так же при создании pull request на github должна запускаться black, ruff и pytest. Запушить результат на гитхам, убедиться гитхаб запустил все три инструмента и результат - зеленая галочка ✅.
Процесс сдачи
- (студент): напишите в ТГ преподавателю одно сообщение, содержащее текст:
Для сдачи Д/з Tests, code quality:- Ссылка на гит с исходным кодом бота
- (преподаватель) проверяет наличие зеленой галочки на гитхабе, делает код ревью, при необходимости задает дополнительные вопросы.
- (преподаватель) отправляет с ТГ личку студенту сообщение “ФИО ✅ 7️⃣”
- (студент) заходит на страницу успеваемости и проверяет корректность своей успеваемости.
chat-bots/testing_code_quality.1761721904.txt.gz · Last modified: by olegsklyarov
