Automation with python
1.42K subscribers
1 photo
144 links
Канал агрегатор, все самое интересно об автоматизации на Python

https://www.facebook.com/AutomationWithPython/
Download Telegram
Python testing style guide
#python #pytest #tests

Каталог "best practices" по написанию тестов
собранный автором на основе личного опыта

PS: это не свод правил, а больше как пища для размышлений

👉 http://bit.ly/3f3k0zO
Playwright with Pytest
#tests #pytest

Playwright уже давно не новинка в JS автоматизации.
Я как то писал, о том что его портировали на Python.
Но как с ним обстоят дела? И тут наткнулся на видео,
в котором автор рассказывает о фичах
и показывает как на нем просто писать тесты 🤪

👉 https://bit.ly/3b4n5wX
👍1
Unit tests generation
#tests

Появилось спасение для разработчиков
которые не любят писать юнит тесты
Pynguin - тул командной строки
который помогает автоматически генерировать простые юнит тесты

попробовал натравить на
def foo(x: int, y: int) -> int:
return x / y

как результат сгенерировал один тест
def test_case_0():
var0 = 1453
var1 = module0.foo(var0, var0)
assert var1 == pytest.approx(1.0, abs=0.01, rel=0.01)

PS: Качество конечно страдает и есть нюансы
- не работает для объктов без объявленых типов
- нужет python >= 3,8
- с негативными кейсами проблемка, их нет
- поддерживать такие тесты ад еще тот
- не поддерживает pytest.parametrize
зато бесплатно
и зеленые 🤣

👉 https://bit.ly/2T7MI9X
👍2
Проверка уязвимостей в коде
#tests #security

В отлично время живем 👌
pylint | flake8 - помогаю найти баги до запуска кода
black - решает за меня как мой код должен выглядеть
isort - в каком порядке импортировать модули
pynguin - пишет тесты

А что на счет безопастности?
Bandit - поможет найти общие проблемы безопасности

Натравил на свое приложение, работает достаточно быстро
но над безопасностью нужно еще поработать 😅
Code scanned:
Total lines of code: 74289
Total issues (by confidence):
Undefined: 0.0
Low: 0.0
Medium: 9
High: 138.0

PS: только из-за название нужно попробовать 🤟

👉 https://bit.ly/3wqDX9G
👍4
Finding the root cause of hung Python test
#tests #pytest #debug

В статье попытался описать как можно
найти первопричину зависания теста 😍
На примере простой функции c
time.sleep и pytest

👉 https://bit.ly/3oUJDbh
👍2
Fight with `Flaky` tests or another side of using pytest-xdist
#pytest #tests #debug #pytest-xdist

История о том как с помощью pytest и его плагинов
можно решать проблемы в тестироване, создавать новые,
и потом снова их решать с помощью pytest плагинов.
"романтика"
😍

👉 https://bit.ly/31pgds1
👍3