М97 Изучаем Python: программирование игр, визуализация данных, веб-приложения



Pdf көрінісі
бет172/334
Дата18.10.2023
өлшемі6,19 Mb.
#186390
1   ...   168   169   170   171   172   173   174   175   ...   334
Байланысты:
Изучаем Python

ПРИМЕЧАНИЕ
Во время работы тестового сценария Python выводит один символ для 
каждого модульного теста после его завершения . Для прошедшего теста выводится 
точка; если при выполнении произошла ошибка, выводится символ E, а если не прошла 
проверка условия assert, выводится символ F . Вот почему вы увидите другое количество 
точек и символов в первой строке вывода при выполнении ваших тестовых сценариев . 
Если выполнение тестового сценария занимает слишком много времени, потому что 
сценарий содержит слишком много тестов, эти символы дадут некоторое представление 
о количестве прошедших тестов .
УПРАЖНЕНИЯ
11.3. Работник:
напишите класс 
Employee
, представляющий работника. Метод 
__init__()
должен получать имя, фамилию и ежегодный оклад; все эти значения должны сохраняться 
в атрибутах. Напишите метод 
give_raise()
, который по умолчанию увеличивает ежегод-
ный оклад на $5000 — но при этом может получать другую величину прибавки.
Напишите тестовый сценарий для 
Employee
. Напишите два тестовых метода, 
test_give_
default_raise()
и 
test_give_custom_raise()
. Используйте метод 
setUp()
, чтобы вам не 
приходилось заново создавать экземпляр 
Employee
в каждом тестовом метода. Запустите 
свой тестовый сценарий и убедитесь в том, что оба теста прошли успешно.
Итоги
В этой главе вы научились писать тесты для функций и классов с использованием 
средств модуля 
unittest
. Вы узнали, как написать класс, наследующий от 
unittest.
TestCase
, и как писать тестовые методы для проверки конкретных аспектов пове-
дения ваших функций и классов. Вы научились использовать метод 
setUp()
для 
эффективного создания экземпляров и атрибутов, которые могут использоваться 
во всех методах для тестирования класса.
Тестирование — важная тема, на которую многие новички не обращают внимания. 
Пока вы делаете свои первые шаги в программировании, писать тесты для про-
стых проектов не нужно. Но как только вы начинаете работать над проектами, 
требующими значительных затрат ресурсов на разработку, непременно обеспечьте 
тестирование критических аспектов поведения ваших функций и классов. С эф-
фективными тестами вы можете быть уверены в том, что изменения в проекте не 
повредят тому, что уже работает, а это развяжет вам руки для усовершенствова-
ния кода. Случайно нарушив существующую функциональность, вы немедленно 


236

Достарыңызбен бөлісу:
1   ...   168   169   170   171   172   173   174   175   ...   334




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет