Te presento: una plantilla lista para usar con Spring.
Introduccion
El propósito de este artículo es mostrar que escribir autotests con Spring es más fácil que escribir en Java puro.
También quiero demostrar cómo Java + Spring hace la vida más fácil para los evaluadores.
¿Para quién es este artículo?
Si necesita admitir varios perfiles (por ejemplo, WEB y MÓVIL, COM y RU), entonces Spring es justo para usted.
Esta plantilla será interesante para aquellos que desean aumentar / crear su implementación, pero no saben por dónde comenzar.
¿Qué obtienes en la publicación de lectura?
Después de leer, tendrá una idea de cómo implementar su plantilla en Java + Spring.
Lo que necesita ser instalado.
- Java 11.
- maven-3.6.1 y posterior.
Beneficios de primavera
Spring es bastante popular si Spring aparece en tu automatización; los desarrolladores ciertamente te lo agradecerán.
Creo que la primavera es bastante rara en las pruebas, porque nadie ha cancelado las tareas de automatización y, por regla general, no hay mucho tiempo para el desarrollo, o no hay ninguno en absoluto.
Spring tiene muchos proyectos diferentes, uno de ellos es Spring Boot, que le permite configurar Spring automáticamente y muchas cosas suceden debajo del capó, al escribir 3 líneas obtenemos el proyecto terminado.
Lo que se incluye en el proyecto.
Cucumber es quizás uno de los marcos de prueba automatizados más populares que implementa un enfoque de desarrollo basado en el comportamiento .
selenide es un marco auxiliar para escribir pruebas de IU elegantes basadas en selenio.
WebDriverManager : que se encarga de todo el trabajo sucio
agregando variables para el proyecto System.setProperty ("webdriver.browser.driver", "/ path_to_driver / driver");
lombok - java lib que genera automáticamente métodos como tostring, getter, setter.
Spring jdbc: simplifica el acceso a BD relacionales y facilita el trabajo con SQL.
Descargar el proyecto
https://github.com/andewBr/seleniumWithSpring
Para comenzar el proyecto, debe especificar en la línea OPCIONES de VM:
-Dspring.profiles.active=dev-andrew

estructura de paquete y clase
paquete (config) - configuración del proyecto.
clase WebdriverBeanConfig: la clase más importante, WebDriver se inicializa.

clase DBBeanConfig: una clase en la que creamos un bean para trabajar con BD, le dice a Spring dónde obtener el dataSource

class PropertiesConfig: una clase para trabajar con datos en una vista de árbol
// @Value("${habr.url}") // private String url; )) @Autowired private PropertiesConfig property; property.getWeb().getBaseurl();

paquete (página) - un paquete para almacenar localizadores, elementos web - (como está escrito en el primer "programa de Java en el nivel de interfaz") lo que haremos en el futuro)
Página de interfaz - método Map <String, SelenideElement> getElements ();

todas las demás clases en este paquete devuelven MAP <clave, elemento en sí>

paquete (servicio)
CommanService: una clase para trabajar con SelenideElement en la que implementamos el trabajo con la página

La clase BasePageService hereda de la clase CommonService y procesa los elementos.

paso del paquete: trabajar con archivos de características

resources.features -> presenta archivos propios
