Protractor / Page Objets

Références

L'actualité

Librairie

L'information

Introduction

Lors de la rédaction de tests de bout en bout, un modèle courant consiste à utiliser des objets de page. Les objets de page vous aident à rédiger des tests plus propres en encapsulant des informations sur les éléments de la page de votre application. Un objet de page peut être réutilisé dans plusieurs tests. Si le modèle de votre application change, il vous suffit de mettre à jour l'objet de page.

Sans objets de page

Voici un script de test simple ( example_spec.js ) pour l'exemple 'The Basics' sur la page d'accueil angularjs.org.


Avec des objets de page

Pour passer aux objets de page, la première chose à faire est de créer un objet de page. Un objet de page pour l'exemple 'The Basics' sur la page d'accueil angularjs.org pourrait ressembler à ceci :

Ou, si vous utilisez async/await, quelque chose comme ceci : (Notez que les fonctions qui ne l'utilisent pas await ne devraient pas avoir le préfixe async.)

Vous devez ensuite modifier le script de test pour utiliser l'objet de page et ses propriétés. Notez que la fonctionnalité du script de test lui-même ne change pas (rien n'est ajouté ou supprimé).

Dans le script de test, vous utiliserez l'objet require de la page tel que présenté ci-dessus. Le chemin d'accès à l'objet de page sera relatif à vos spécifications, ajustez-le en conséquence.

Si vous utilisez async / await, cela deviendra quelque chose comme :


Configuration des suites de tests

Il est possible de séparer vos tests dans différentes suites de tests. Dans votre fichier de configuration, vous pouvez configurer l'option suites comme indiqué ci-dessous :

À partir de la ligne de commande, vous pouvez ensuite basculer facilement entre l'une ou l'autre suite de tests. Cette commande n'exécutera que la section page d'accueil des tests :

De plus, vous pouvez exécuter des suites de tests spécifiques avec la commande :