O — Open/Closed Principle(Принцип открытости/закрытости)
Программные объекты (модули, классы, функции и т. д.) должны быть открыты для расширения, но закрыты для модификации. В автоматизации тестирования этот принцип побуждает нас разрабатывать наши тестовые среды таким образом, чтобы мы могли добавлять новые тесты или функции без изменения существующего кода. Например, мы можем добиться этого, используя полиморфизм и наследование для создания тестовых компонентов многократного использования.
Несколько примеров того, как вы можете это применить:
Объекты данных API:
Сегодня мы реализовали конечную точку REST API для версии 1 (v1). Для этой версии создан класс объекта данных Регистра.
Шесть месяцев спустя была представлена новая версия конечной точки с дополнительной логикой и новыми полями, добавленными в функцию регистрации.
Вместо обновления существующего класса можно создать новый класс на основе текущего. Этот подход позволяет нам использовать существующие поля/свойства класса и включать новые свойства в новый класс.
Реализация класса BaseTest:
Давайте рассмотрим базовый класс, который использует большинство тестовых классов. В будущем вы, возможно, захотите добавить конкретную логику, относящуюся только к определенным классам тестов. Например, создание базового класса для функций учетной записи для получения данных пользователя из файла Json на основе предоставленного типа пользователя.
Last updated
Was this helpful?