Что такое Page Object Model и какие проблемы он решает?
Page Object Model оборачивает каждую страницу или компонент в класс, который отдаёт локаторы и высокоуровневые действия, поэтому тесты описывают намерение, а не клики. Он решает проблему поддержки: при изменении вёрстки правишь один page object вместо пятидесяти тестов. Ещё он убирает дублирование и делает тесты читаемыми для тех, кто их не писал.