In my #python project #xiaolongdictionary I had need for generating example data. I did not want to add more dependencies for that, so I took some time to create a function, that takes a TypedDict type and a dictionary of "constraints" to constrain the produced values and output a "factory", that can be called and outputs example values.

https://codeberg.org/ZelphirKaltstahl/xiaolong-dictionary/src/commit/9437f974e8f59a77e0052d26ee6cc10641052313/test/factories.py

It does not cover all the cases that one could imagine, but seems to cover all of mine.

#test #pytest #factory #programming #coding

xiaolong-dictionary/test/factories.py at 9437f974e8f59a77e0052d26ee6cc10641052313

xiaolong-dictionary - Xiaolong Dictionary — A GUI application to help you learn vocabulary of (probably) any language. It is written in Python using tkinter, and runs on GNU/Linux, Windows, and probably also MacOS.

Codeberg.org

Фабрики в тестировании (Python, Django, pytest, factory_boy)

Здесь мы рассматриваем фабрики в тестировании. На очень элементарных примерах, с использованием языка python и инструментов Django, pytest, factory_boy.

https://habr.com/ru/articles/1017700/

#python #pytest #django #factory_boy #тестирование

Фабрики в тестировании (Python, Django, pytest, factory_boy)

Зачем нужны фабрики в тестировании “В больших проектах есть необходимость контролировать очень много критичных частей, и не всегда есть время на их контроль вручную” Эта фраза знакома каждому...

Хабр

I kept forgetting how to assert exception messages in PyTest, so I finally checked the docs.

Here’s a reference snippet 🐍

#TIL #DailyPythonista #PyTest #TDD #Python #programming

https://borutzki.github.io/2026/03/30/how-to-assert-exception-message-in-pytest.html

pytest-check 2.8.0
https://github.com/okken/pytest-check/releases/tag/2.8.0
check helper functions, check.equal(), etc., now support an optional xfail string to allow check failures to result in xfail instead of fail on a non-xfail marked test
And we’re temporarily at 0 open issues and 0 PRs
#Python #pytest
Release 2.8.0 · okken/pytest-check

Support Request #122: Feature proposal: Capability to mark checks as xfail Allow check helper functions, including raises(), to accept an xfail reason. A failing check can now produce an xfailed te...

GitHub

Параметризация Pytest: когда файловая коллекция становится тест-кейсами

Привет, Хабр! Меня зовут Владислав Тимашенков, я занимаюсь автоматизацией тестирования в ГК InfoWatch. Мы разрабатываем DLP-систему для защиты контента и предотвращения утечек информации. Специфика продуктов InfoWatch состоит в анализе самых разнообразных данных. Поэтому практически каждый автотест требует подхода с широким набором параметров. Для нашей команды хорошим решением стало вынести генерацию параметров pytest.mark.parametrize в отдельный компонент, который собирает данные из файловой коллекции проекта. Существует множество способов параметризировать тестовые функции. Эта статья — пример изящной параметризации Pytest для сценариев, основанных на файловой коллекции проекта с большим количеством данных. Расскажем про наш опыт решения такой задачи. Параметризация Pytest позволяет сделать из теста каркас, шаблон, который принимает данные для конфигураций, для assert и т.д. Пример из документации Pytest:

https://habr.com/ru/companies/infowatch/articles/1012040/

#python #pytest #автоматизация_тестирования #тестирование #qa_automation #qa

Параметризация Pytest: когда файловая коллекция становится тест-кейсами

Привет, Хабр! Меня зовут Владислав Тимашенков, я занимаюсь автоматизацией тестирования в ГК InfoWatch. Мы разрабатываем DLP-систему для защиты контента и предотвращения утечек информации. Специфика...

Хабр

Novo post no blog: testes que realmente testam.

Fixtures com escopo controlado, parametrize para eliminar duplicação e mocks com pytest-mock para isolar dependências externas — tudo o que falta para sair do `assert 1 == 1` e ter uma suite que protege o código de verdade.

Fecha o loop do artigo de injeção de dependência: o código ficou testável lá; agora está, de fato, testado.

🔗 https://www.riverfount.dev.br/posts/pytest_alem_do_basico/

#python #pytest #testes #programação

Testes que Realmente Testam: pytest Além do Básico

No artigo sobre injeção de dependência ficou um problema em aberto. A classe OrderService não dava para testar sem subir banco, sem fazer chamada HTTP real, sem criar arquivo em disco. A solução apresentada foi injetar as dependências pelo construtor — o que deixa o código testável. Mas testável não significa testado. Este artigo fecha esse loop. O objetivo aqui não é ensinar assert 1 == 1. É mostrar as ferramentas que separam uma suite de testes que protege o código de uma suite que só infla a cobertura: fixtures com escopo controlado, parametrize para eliminar duplicação, e mocks com pytest-mock para isolar dependências externas de verdade.

Blog do Riverfount

A #pytest plugin to make the output look like #pest 's one: https://github.com/einenlum/pytest-elegant

#PHP #Python

Redirecting...

10 900 тестов: Как мы обеспечиваем качество в PingZen, или Почему ваш мониторинг должен быть протестирован

Мониторинг мониторинга - звучит как масло масляное, но именно этим мы постоянно занимаемся в PingZen . Ведь наш сервис должен быть надёжнее, чем объекты, которые он отслеживает. Если PingZen упадёт, кто сообщит о падении вашего сайта? Сегодня я залезу под капот тестирования PingZen и расскажу, как мы дошли до 10 900 автоматических тестов (5100 на бэкенде и 5812 на фронтенде). Все цифры и технологии - строго из нашего репозитория . Без хайпа, только факты, код и архитектурные решения.А статью подробнее про Pingzen можете посмотреть здесь

https://habr.com/ru/articles/1006610/

#системное_администрирование #мониторинг #мониторинг_сервера #мониторинг_сайта #devops #testing #python #pytest

10 900 тестов: Как мы обеспечиваем качество в PingZen, или Почему ваш мониторинг должен быть протестирован

Мониторинг мониторинга  - звучит как масло масляное, но именно этим мы постоянно занимаемся в PingZen . Ведь наш сервис должен быть надёжнее, чем объекты, которые он отслеживает. Если PingZen...

Хабр
… and now we have also moved the pytest configuration to the pyproject.toml file: https://python-basics-tutorial.readthedocs.io/en/latest/test/pytest/config.html
#Python #Testing #pytest
Configuration

You can use configuration files to change the way pytest runs. If you repeatedly use certain options in your tests, such as--verbose or--strict-markers, you can store them in a configuration file s...

Python Basics