HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-02-26
1 <p>Каждую проверку, которую мы написали для функции capitalize(), в тестировании принято называть<strong>утверждением</strong>. В этом уроке мы познакомимся с этим понятием подробнее.</p>
1 <p>Каждую проверку, которую мы написали для функции capitalize(), в тестировании принято называть<strong>утверждением</strong>. В этом уроке мы познакомимся с этим понятием подробнее.</p>
2 <h2>Что такое утверждение</h2>
2 <h2>Что такое утверждение</h2>
3 <p>Утверждения - это ключевая часть тестов. Именно они проверяют функциональность кода:</p>
3 <p>Утверждения - это ключевая часть тестов. Именно они проверяют функциональность кода:</p>
4 <p>Можно заметить, что все проверки строятся одинаковым способом. В них есть два компонента:</p>
4 <p>Можно заметить, что все проверки строятся одинаковым способом. В них есть два компонента:</p>
5 <ul><li>Условие</li>
5 <ul><li>Условие</li>
6 <li>Исключение, когда условие не выполнилось</li>
6 <li>Исключение, когда условие не выполнилось</li>
7 </ul><p>Функция напрашивается здесь сама собой, но ее не придется делать. Python уже включает в себя специальную конструкцию assert, которая выполняет ту же задачу.</p>
7 </ul><p>Функция напрашивается здесь сама собой, но ее не придется делать. Python уже включает в себя специальную конструкцию assert, которая выполняет ту же задачу.</p>
8 <p>Конструкция assert выглядит как функция, но все же ею не является. Это специальная инструкция языка, которая принимает на вход выражение, значением которого должно быть True, иначе выбрасывается исключение.</p>
8 <p>Конструкция assert выглядит как функция, но все же ею не является. Это специальная инструкция языка, которая принимает на вход выражение, значением которого должно быть True, иначе выбрасывается исключение.</p>
9 <p>Поэтому все проверки в тестах инвертируются:</p>
9 <p>Поэтому все проверки в тестах инвертируются:</p>
10 <p>При таких тестах assert True означает, что все хорошо, а assert False говорит об ошибке. Если проверка не пройдет, и capitalize() работает некорректно, генерируется исключение с таким сообщением:</p>
10 <p>При таких тестах assert True означает, что все хорошо, а assert False говорит об ошибке. Если проверка не пройдет, и capitalize() работает некорректно, генерируется исключение с таким сообщением:</p>
11 <p>Здесь показано само утверждение, на котором сработало исключение. Кроме сообщения, выводится бэктрейс, по которому можно найти утверждение.</p>
11 <p>Здесь показано само утверждение, на котором сработало исключение. Кроме сообщения, выводится бэктрейс, по которому можно найти утверждение.</p>