POM — паттерн, где UI-страница (или крупный фрагмент) инкапсулирована в класс/модуль с локаторами и действиями, а тесты вызывают методы, а не сырые селекторы.
Разбор
Снижает дублирование локаторов между тестами.
При смене DOM правят один page object, а не десятки тестов.
Тест читается как бизнес-шаги: loginPage.login(user).
Антипаттерн: «god-object» на всё приложение и assertions внутри page без необходимости.