Modèle prêt à l'emploi pour les tests à l'aide de Spring

Je vous présente - un modèle prêt à l'emploi pour les tests à l'aide de Spring.


Présentation


Le but de cet article est de montrer qu'il est plus facile d'écrire des autotests avec Spring que d'écrire en Java pur.
Je veux également montrer comment Java + Spring facilite la vie des testeurs.


À qui s'adresse cet article?


Si vous devez prendre en charge plusieurs profils (par exemple, WEB et MOBILE, COM et RU) - Spring est fait pour vous.


Ce modèle sera intéressant pour ceux qui souhaitent augmenter / créer leur implémentation, mais ne savent pas par où commencer.


Qu'obtenez-vous le post de lecture


Après avoir lu, vous aurez une idée de la façon d'implémenter votre modèle dans Java + Spring.


Ce qui doit être installé.


  • Java 11.
  • maven-3.6.1 et versions ultérieures.

Avantages du printemps


Spring est très populaire si Spring apparaît dans votre automatisation - les développeurs vous remercieront certainement.


Je pense que le printemps est assez rare dans les tests, car personne n'a annulé les tâches d'automatisation, et en règle générale, il n'y a pas beaucoup de temps pour le développement, ou il n'y en a pas du tout.


Spring a de nombreux projets différents, l'un d'eux est Spring Boot - qui vous permet de configurer Spring automatiquement et beaucoup de choses se passent sous le capot, en écrivant 3 lignes, nous obtenons le projet fini.


Ce qui est inclus dans le projet


Le concombre est peut-être l'un des cadres de test automatisé les plus populaires qui implémente une approche de développement axée sur le comportement .


selenide est un framework d'aide à l'écriture de tests d'interface utilisateur gracieux basés sur le sélénium.


WebDriverManager - qui s'occupe de tout le sale boulot
ajout de variables pour le projet System.setProperty ("webdriver.browser.driver", "/ path_to_driver / driver");


lombok - bibliothèque java qui génère automatiquement des méthodes comme tostring, getter, setter.


Spring jdbc - simplifie l'accès aux BD relationnels et facilite l'utilisation de SQL.


Téléchargez le projet


https://github.com/andewBr/seleniumWithSpring


Pour démarrer le projet, vous devez spécifier dans la ligne VM OPTIONS:


-Dspring.profiles.active=dev-andrew 


package et structure de classe


package (config) - configuration du projet.


classe WebdriverBeanConfig - la classe la plus importante, WebDriver est initialisée.



classe DBBeanConfig - une classe dans laquelle nous créons un bean pour travailler avec BD, dire à Spring où trouver le dataSource



class PropertiesConfig - une classe pour travailler avec des données dans une arborescence


      // @Value("${habr.url}") // private String url;     )) @Autowired private PropertiesConfig property; property.getWeb().getBaseurl(); 


package (page) - un package pour stocker des localisateurs, des éléments Web - (comme il est écrit dans le premier programme Java au niveau de l'interface.) ce que nous ferons à l'avenir)


interface Page - méthode Map <String, SelenideElement> getElements ();



toutes les autres classes de ce package renvoient MAP <clé, élément lui-même>



forfait (service)


CommanService - une classe pour travailler avec SelenideElement dans laquelle nous implémentons le travail avec la page



La classe BasePageService hérite de la classe CommonService et traite les éléments.



étape du package - travailler avec des fichiers de fonctionnalités



resources.features -> contient les fichiers eux-mêmes


Source: https://habr.com/ru/post/fr484966/


All Articles