Page Object Model: Teoría e implementación

No van a encontrar NUNCA (espero) un proyecto que no use el Page Object Model (POM, a no confundir con pom.xml, el archivo para buildear y resolver dependencias de Maven, la otra opción a Gradle). Es más, si encuentran un proyecto que no lo usa, ustedes tienen la misión de implementarlo. No tiene sentido no usar el Page Object Model y lo van a agradecer cuando tengan que hacer mantenimiento.

Esta sección es para explicar el por qué se usa, qué es exactamente y cómo implementarlo en nuestro proyecto.