> For the complete documentation index, see [llms.txt](https://abi.gitbook.io/net-core/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://abi.gitbook.io/net-core/9.-pruebas-de-integracion/14.2-page-object-model.md).

# 14.1 Page Object Model

El Page Object Model (POM) es un patrón de diseño utilizado en pruebas de e2e.&#x20;

Por cada página creas una clase con los componentes  (input, botones, combos, etc) de la página y las funciones comunes de la pagina. Esto permite reutilizar el accesso a los elementos si por ejemplo por alguna razón un elemento cambia de nombre, solo lo cambias en la clase de la página en lugar de cambiarlo en todos los test.

### Ejemplo

Se muestra un ejemplo para una página de Login con un input para el usuario, otro para el passsword, el título de la página, el botón para el login y un mensaje de error

![](/files/sI0JtrY3HiebrftOjDRs)

Se crea una clase con las propiedades User, Password,Title,ErrorMessage y LoginButton para acceder a cada componente de la página y un metódo Login para realizar el login de la página
