pytest.raises: ловим исключения правильно

Привет, Хабр! Сегодня говорим о pytest.raises . Не о его наличии в экосистеме — это известно каждому, кто хоть раз писал тесты. Говорим о правильном использовании. Потому что между «тест проходит» и «тест действительно что-то проверяет» — пропасть.

https://habr.com/ru/companies/otus/articles/901858/

#python #программирование #pytestraises #pytest #тестирование_исключений #обработка_ошибок #тестирование_кода #обработка_исключений #интеграционные_тесты

pytest.raises: ловим исключения правильно

Привет, Хабр! Сегодня говорим о pytest.raises . Не о его наличии в экосистеме — это известно каждому, кто хоть раз писал тесты. Говорим о правильном использовании. Потому...

Хабр

[Перевод] Программист никому не должен доверять, и даже самому себе

Программисты должны быть параноиками. «Я дважды проверил код» «Код проходит все тесты» «Ревьюер одобрил мой код» «Так ли корректен мой код?» Писать код корректно трудно, а подтвердить корректность кода невозможно. Вот некоторые из причин этого: Всеобщность : даже если код правильно вёл себя один раз, будет ли он вести себя так во всех случаях на всех машинах и всегда? Ложное прохождение теста : непрохождение тестов указывает на наличие багов, но прохождение текстов не гарантирует их отсутствия. Отсутствие определённости : можно написать формальное доказательство корректности кода, но теперь нужно задаться вопросом, корректно ли доказательство. Потребуется доказать доказательство. Эта цепочка проверки проверок никогда не закончится. Безумно было бы стремиться к определённости корректности кода. Баг может скрываться в зависимости, которую вы никогда не найдёте. Однако отчаиваться не стоит, всё равно можно снизить вероятность багов, расширяя своё понимание и внимательность.

https://habr.com/ru/companies/ruvds/articles/825854/

#ruvds_переводы #абстракции #протекающие_абстракции #тестирование_кода #слои_абстракций #допущения