Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование.Python.8-10.docx
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
1.2 Mб
Скачать

Генерация исключений

Инструкция raise позволяет программисту принудительно сгенерировать исключение. Например:

>>> raise NameError('HiThere') Traceback (innermost last): File "<stdin>", line 1  NameError: HiThere

В качестве аргумента raise используется экземпляр класса. Класс указывает на тип исключения; аргумент, передаваемый конструктору, обычно описывает “подробности” возникновения исключительной ситуации.

“Страхование” от ошибок

Еще один вариант записи инструкции try — с определением “страховочной” ветви finally, которая будет выполняться при любых обстоятельствах. Например:

>>> try:  …     raise KeyboardInterrupt()  … finally:  …     print 'До свидания!'  …

До свидания!  Traceback (innermost last): File "<stdin>", line 2  KeyboardInterrupt

Ветвь finally выполняется независимо от того, возникла ли исключительная ситуация во время выполнения блока try или нет, в том числе и если выход происходит по инструкции break или return.

Юнит-тестирование

Модульное тестирование, или юнит-тестирование (англ. unit testing) — процесс в программировании, позволяющий проверить на корректность отдельные модули исходного кода программы.

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

Конечно, тестирование не нужно, если вы всегда пишете код без ошибок, обладаете идеальной памятью и даром предвидения.

Тестирование как этап разработки программы

TDD

Test-driven development — одна из методологий разработки программного обеспечения, заключающаяся в том, что сначала пишутся тесты, охватывающие все аспекты ТЗ, а затем пишется код, который должен проходить заранее заготовленные тесты. Это лишь один из возможных способов построения процесса разработки ПО.

Тестирование производится различными специалистами, участвующими в разработке ПО. На первом этапе код тестируется разработчиком. В частности, он ответственен за написание юнит-тестов к своим функциям и классам, потому что только на уровне ответственности отдела разработки известно, как именно устроен код изнутри. 

На следующем этапе код тестируется отдельными специалистами по тестированию, которые отвечают за работоспособность, соответствие техническому заданию (ТЗ), эффективность работы кода, также проводится нагрузочное тестирование (загрузка оборудования и скорость работы системы), тестирование долгосрочной работы.

После этого продукт представляется на суд пользователей (возможно, сначала лишь небольшой части пользователей для сбора отзывов и сообщений об ошибках). 

Автоматизация тестирования позволяет при каждом изменении продукта быстро убедиться, что внесенные изменения не ломают имеющуюся функциональность.

Виджеты

Виджет (англ. Widget) — примитив графического интерфейса пользователя, имеющий стандартный внешний вид и выполняющий стандартные действия. Другие названия: контрол (control), элемент управления и элемент интерфейса.

Происхождение термина «виджет»

Слово «widget» впервые фиксируется в 1926 году в том же значении, что и gadget — «приспособление, штуковина». Предполагают, что на его форму повлияло gadget, а происходит он из which it — «этот, как его».

Слово «Виджет» также используется и как название класса вспомогательных мини-программ — графических модулей, которые размещаются в рабочем пространстве соответствующей родительской программы и служат для украшения рабочего пространства, развлечения, решения отдельных рабочих задач или быстрого получения информации из интернета без помощи веб-браузера.