Как и у каждого паттерна, который должен быть решением для повторного использования - в игре есть определенный c контекст, который делает разумным использование такого паттерна. Я полагаю, что вы сразу рассмотрели все соображения , прежде чем переходить к POM:
Построенные объекты страниц очень часто сложно поддерживать и использовать. Очень хорошо продуманный дизайн необходим для группировки элементов в верхние и нижние колонтитулы или идентифицированные виджеты, не должно быть просто большого списка вещей, имена также должны быть удобочитаемыми, достаточно, чтобы объяснить, что они были для
Это может ограничить ваш дизайн, например, вы начинаете игнорировать лучшие абстракции.
Недостаточно гибкости, особенно для рефакторинга (как структуры, так и реализации).
- POM ошибочен по замыслу, так как явно нарушает SRP , сохраняя карту элементов и действия над ними.
Что касается
если я должен создать отдельный тестовый пример для каждого объекта? Я имею в виду создать отдельные файлы .py и импортировать библиотеки снова или просто импортировать объекты в один файл .py, который представляет тест?
Ваш Испытательный жгут должен содержать три отдельные задачи:
- двигатель выполнения теста (core logi c)
- тестовые сценарии
- тестовые данные
Проще говоря - не связывайте сценарии с POM.
Вот репозиторий Github, посвященный автоматизации в тестировании и разработке шаблонов . Не стесняйтесь использовать его!