Planifier vos tests pour qu'ils s'exécutent sur votre ordinateur lorsque vous n'êtes pas là est évidemment une bonne idée et étonnamment facile à faire. Mais les avantages ne s'arrêtent pas là : la planification des tests vous permet d'exécuter vos tests sur plusieurs navigateurs Web et d'accélérer vos tests en utilisant des tests de navigateur sans tête.
Vous avez donc créé votre premier bout en bout ( E2E) test et vous l'avez exécuté à partir de Test Studio. En fait, vous avez ensuite créé d'autres tests, dont certains pilotés par les données d'un ensemble de données ou utilisant une logique conditionnelle pour gérer plusieurs scénarios. Vous exécutez tous ces tests régulièrement pour confirmer que vos applications continuent de fonctionner "comme prévu" à mesure que des modifications leur sont apportées.
, ça commence à être pénible. Votre vrai travail consiste à trouver des problèmes en faisant des tests exploratoires ou à consulter l'équipe de développement sur des problèmes de qualité ou à écrire de nouveaux tests ou… eh bien, un certain nombre de centaines d'autres choses. Au lieu de cela, votre temps (et celui de votre ordinateur) est consacré à l'exécution de tests. Ce serait formidable de pouvoir exécuter vos tests automatiquement sans votre attention. Bonne nouvelle : Test Studio vous permet de le faire.
En outre, le fait que Test Studio planifie l'exécution automatique de vos tests vous offre deux options supplémentaires que vous souhaitez probablement maintenant.
Premièrement : la planification des tests vous donne la possibilité possibilité d'exécuter vos tests sur plusieurs navigateurs. S'assurer que votre application fonctionne sur tous les navigateurs que vous êtes prêt à prendre en charge—les tests inter-navigateurs—est évidemment une bonne chose… si cela peut être fait automatiquement.
Deuxièmement : si vous en êtes arrivé au point où vous envisagez de programmer des tests, vous en êtes probablement aussi au point où l'exécution de tous vos tests devient chronophage. La planification de tests vous permet également de profiter des tests de navigateur sans têtece qui réduira considérablement la durée de vos tests sur un seul navigateur.
La planification de tests à exécuter sur votre ordinateur nécessite la configuration de Test Studio Services (TSS ). La bonne nouvelle ici est que, si vous avez installé Test Studio, vous avez probablement installé et configuré TSS. Vous êtes déjà prêt à exécuter des tests planifiés sur votre propre ordinateur.
Vérifier que tout est installé
C'est facile pour vérifier si TSS est installé : ouvrez un projet dans Test Studio (le projet Web et le projet Test Studio correspondant à cet article de blog peuvent être téléchargés ici), sélectionnez l'onglet Projet dans le menu de Test Studio et , dans la section Planification du menu, vérifiez si l'icône Configuration est activée. Si cette icône est activée, vous avez installé TSS et Test Studio peut communiquer avec lui.
Si l'icône n'est pas activée, vous n'avez probablement pas installé TSS. Heureusement, l'installation de TSS sur un ordinateur qui a déjà Test Studio est un jeu d'enfant :
- Dans le menu Windows, accédez à Ajouter ou supprimer des programmes.
- Trouvez l'entrée Test Studio et choisissez l'option Modifier .
- Lorsque la boîte de dialogue d'installation de Test Studio apparaît, cliquez sur le bouton Suivant, puis sur le bouton Modifier pour afficher la boîte de dialogue Sélectionner les fonctionnalités.
- Dans la boîte de dialogue Sélectionner les fonctionnalités, ajoutez le service de stockage, le serveur de planification et le tableau de bord exécutif.
Si Test Studio parvient à se connecter au serveur de planification, la boîte de dialogue se mettra à jour pour indiquer si la journalisation est activée sur le serveur de planification et la vue Options de journalisation/effacement du journal pour le serveur. Une fois que vous obtenez ces commentaires, vous pouvez laisser le paramètre sur Exécuter à distance ou réinitialiser pour exécuter localement. de votre choix et surfez sur http://localhost:8085 pour voir la page par défaut du tableau de bord. Plus tard, vous pourrez utiliser Test Studio pour vérifier que votre serveur de stockage est correctement configuré mais, tant que votre navigateur est ouvert, vous pouvez effectuer une première vérification sur le serveur de stockage en surfant sur http : //localhost:27017 (vous devriez recevoir le message : "Il semble que vous essayez d'accéder à MongoDB via HTTP sur le port du pilote natif"). Enfin, toujours dans votre navigateur, vous pouvez vérifier sur le serveur de planification à http://localhost:8009qui affichera un document XML des requêtes HTTP valides.
Si tout fonctionne (et il le fera probablement), alors, à moins que vous ne souhaitiez recevoir un e-mail lors de l'exécution de vos tests planifiés, vous n'avez pas besoin de configurer TSS. Si une ou plusieurs de ces URL ne fonctionnent pas, consultez le guide de configuration plus loin dans cet article.
Configuration des rapports par e-mail
Mais si, en plus d'examiner vos résultats de test dans Test Dans l'onglet Résultats de Studio, vous souhaitez également recevoir des e-mails concernant vos exécutions de test planifiées, vous devrez configurer Test Studio Services avec vos informations d'e-mail. Pour cela :
- Démarrez Test Studio.
- Ouvrez un projet.
- Dans le menu de Test Studio, cliquez sur l'onglet Projet.
- Dans la section Planification du menu, cliquez sur l'icône Configurer.[19659015]Lorsque la boîte de dialogue Configurer les services Test Studio s'affiche, sélectionnez l'onglet Planification.
- Sur l'onglet Planification, développez l'option Configurer la messagerie et entrez votre serveur de messagerie (par exemple, mymail .com), votre port d'envoi de courrier (généralement, le port 25), l'adresse e-mail spécifique à laquelle vous souhaitez envoyer les e-mails et le mot de passe à utiliser pour vous connecter à votre serveur de messagerie.
Création de tests programmés
Avant de programmer une exécution de test, vous devez assembler les tests d'un projet que vous souhaitez exécuter ensemble dans une liste de tests (vous planifiez en fait des listes de tests, pas des tests individuels) . Vous pouvez ajouter à votre liste de tests soit en sélectionnant des tests individuels dans votre projet, soit en créant un ensemble de règles qui sélectionneront dynamiquement des tests dans votre projet au moment de l'exécution des tests.
Dans tous les cas, pour créer votre liste de tests, démarrez Test Studio , ouvrez le projet avec les tests que vous souhaitez planifier et sélectionnez l'onglet Liste de tests dans la barre de menus de Test Studio.
Si vous souhaitez simplement sélectionner des tests individuels à exécuter, cliquez sur le bouton Liste à l'extrémité gauche du menu Liste de tests pour ouvrir la boîte de dialogue Créer une nouvelle liste de tests. La boîte de dialogue contient, à gauche, la liste des tests de votre projet et, à droite, les tests que vous avez sélectionnés pour faire partie de cette liste de tests (initialement, bien sûr, cette liste sera vide).[19659005]En haut de la boîte de dialogue, donnez un nom à votre liste de tests, puis utilisez les flèches entre les deux listes pour déplacer vos tests d'une liste à l'autre. Vous pouvez utiliser les flèches haut et bas en bas de la liste de droite pour contrôler l'ordre dans lequel vos tests sont exécutés.
Si, à la place, vous souhaitez avoir vos tests choisis au moment de l'exécution, puis cliquez sur le bouton Liste dynamique. Cela ouvrira la boîte de dialogue Ajouter une liste de tests dynamiques, qui vous permettra de créer un ensemble de règles pour sélectionner des tests (ces règles seront appliquées lors de l'exécution de la liste de tests afin que les tests que vous voyez lorsque vous configurez le liste peut ne pas être les tests exécutés à l'heure planifiée).
Vous pouvez créer des règles qui sélectionnent des tests en fonction du nom du test, du propriétaire, du chemin d'accès au fichier de test, ou prioritaire. Vous pouvez également sélectionner des tests en fonction des trois propriétés personnalisées de chaque test (CustomProperty1, CustomProperty2 et CustomProperty3).
Conception de projets pour des tests planifiés
Comme cette discussion l'implique, il existe deux règles lors de la création d'une liste de tests :
- Vous pouvez créer autant de listes de tests à partir d'un projet que vous le souhaitez.
- Tous les tests d'une liste de tests proviennent du même projet.
L'une des questions de conception à prendre en compte lorsque vous répartissez les tests entre les projets est : "Est-ce que je veux pouvoir programmer ces tests pour qu'ils s'exécutent ensemble?" Cependant, vous pouvez parfois constater que vous avez des tests dans différents projets que vous souhaitez exécuter ensemble (c'est-à-dire que vos projets sont trop "fins" pour le calendrier que vous souhaitez créer). Dans ce cas, vous devrez fusionner les tests de vos projets à l'aide de l'option de menu Ajouter un test existant.
D'autre part, vous utiliserez les propriétés personnalisées de votre test pour vous permettre de segmenter le tests d'un projet en groupes de tests que vous souhaitez exécuter ensemble. Pour définir les propriétés personnalisées d'un test, cliquez avec le bouton droit sur un test dans un projet, puis sélectionnez Propriétés dans le menu contextuel.
Par exemple, avec les applications Web, il n'est pas rare qu'un test échoue en raison d'une erreur réseau transitoire plutôt que d'une véritable erreur dans l'application. La réexécution des tests ayant échoué est un moyen de vérifier si le problème est réel ou transitoire (si le test réussit la deuxième fois, il y a de bonnes chances que l'échec initial soit transitoire et qu'il n'y ait pas de bogue sous-jacent).
Vous pouvez utiliser la boîte de dialogue Modifier les paramètres pour contrôler cette option. Dans l'onglet Général de la boîte de dialogue Modifier les paramètres, définissez l'option pour que tous les tests ayant échoué dans toutes vos listes de tests soient réexécutés automatiquement. Lorsque vous avez créé votre liste de tests, vous avez peut-être remarqué une case à cocher en bas de la boîte de dialogue qui entraîne également la réexécution automatique de tous les tests ayant échoué dans la liste de tests. Cependant, il est probablement plus logique de définir cela au niveau du projet dans Modifier les paramètres – si vous avez des erreurs transitoires dans une liste de tests, c'est probablement un problème que vous aurez avec toutes vos listes de tests dans le projet.
L'onglet Web de la boîte de dialogue Modifier les paramètres comporte deux autres paramètres utiles.
La liste déroulante des navigateurs en cours d'exécution vous permet de sélectionner plusieurs navigateurs pour exécuter vos tests dans chacun d'eux. L'un des choix ici est cependant spécial : ChromeHeadless qui exécute vos tests sans nécessiter le rendu de vos pages Web. Les tests de navigateur sans tête s'exécutent en beaucoup moins de temps que les tests dans lesquels le navigateur affiche ses pages.
Les tests de navigateur sans tête ne remplacent pas complètement les tests avec plusieurs navigateurs. Cependant, vous pouvez l'utiliser pour accélérer la plupart de vos tests (par exemple, vos tests nocturnes) et réserver des tests avec plusieurs navigateurs (et leur faire afficher leurs pages) pour le moment où vous avez le temps, vos tests du week-end, par exemple. Vous pourrez toujours surveiller la progression de vos tests même si le navigateur n'apparaît pas. Test Studio ouvre une fenêtre de commande qu'il met à jour avec l'état de vos tests sans tête au fur et à mesure qu'ils s'exécutent.
Et, bien sûr, alors que vous pouvez sélectionner plusieurs navigateurs dans le cadre de la création de votre liste de tests, lorsque votre liste de tests s'exécute, TSS n'utilisera que les navigateurs réellement installés sur l'ordinateur où le test s'exécute.
Planification des tests
Vous pouvez maintenant exécuter votre test liste en cliquant simplement sur le bouton Run List (un bon moyen de vérifier que les tests de votre liste de tests n'interfèrent pas les uns avec les autres). Cependant, si vous vous êtes donné tant de mal, vous voudrez probablement établir un calendrier pour exécuter vos tests lorsque vous n'êtes pas là. Pour configurer un calendrier pour votre liste de tests, cliquez sur l'icône Liste de calendrier pour démarrer l'assistant de planification.
Cliquez sur l'icône Schedule List pour ouvrir l'assistant Schedule Test Lists en trois étapes.
- En haut de la première page de l'assistant, cliquez sur Recurring case à cocher, puis définissez le calendrier que vous souhaitez utiliser pour cette liste de tests. Dans cet exemple, la liste de tests est exécutée tous les jours de la semaine à 23 h 00 sans définir de date de fin (par défaut, l'assistant configure votre test pour qu'il s'exécute cinq minutes après l'ouverture de l'assistant).
- Cliquez sur le bouton Suivant pour passer à la deuxième page de l'assistant où vous pouvez sélectionner un serveur d'exécution. À ce stade, en supposant que vous avez uniquement configuré pour exécuter des tests sur votre ordinateur, votre ordinateur sera le seul répertorié (la configuration des serveurs d'exécution à distance sera traitée séparément dans le prochain article de cette série). Vous devrez cocher votre ordinateur sur cette page.
- Cliquez sur le bouton Suivant pour passer à la troisième (et dernière) page de l'assistant. Si vous avez activé l'e-mail pour TSS, vous pouvez utiliser cette page à la fois pour recevoir un e-mail à la fin de l'exécution de la liste de tests (cochez l'option « Envoyer le résultat par e-mail ») et pour personnaliser l'e-mail. Quelles que soient les options d'e-mail que vous sélectionnez ici, les résultats de vos exécutions de liste de tests sont toujours disponibles dans l'onglet Résultats de Test Studio.
Cet exemple envoie un e-mail à peter.vogel@phvis.com, mais uniquement en cas d'échec dans le test (et, même alors, pas sur les erreurs transitoires). Toutes les valeurs par défaut ont été prises pour la ligne d'objet et le contenu du corps, mais l'option permettant de joindre à l'e-mail une feuille de calcul Excel des résultats de l'exécution du test a été sélectionnée. La boîte de dialogue vous donne un aperçu sur la droite de ce à quoi ressemblera l'e-mail. Les options décrites dans le texte ont été prises et l'aperçu de l'e-mail sur la droite montre (approximativement) à quoi ressemblera l'e-mail résultant. » title= »Test-Studio-E2E-Scheduling-17-Setting-Email-Options »/>
Cliquez sur le bouton Terminé et Test Studio affiche automatiquement l'onglet Résultats dans la chronologie. mode, montrant le calendrier des tests pour la semaine en cours. Le jour de la semaine en cours (vendredi) est mis en surbrillance et a deux exécutions programmées. En haut à gauche, il y a des options pour sélectionner les vues Jour, Semaine et Mois en plus de la vue Chronologie » title= »Test-Studio-E2E-Scheduling-18-Test-Schedule »/>
Une fois que vous vous êtes assuré d'avoir l'horaire que vous voulez, vous pouvez rentrer chez vous pour la journée . Test Studio exécutera votre test et téléchargera les résultats sur le serveur de stockage pour que vous puissiez les examiner. Lorsque vous revenez demain matin, vous pouvez revenir à l'onglet Résultats de votre projet dans Test Studio et double-cliquer sur l'entrée de l'exécution planifiée pour ce qui s'est passé pendant votre absence (bien que vous ayez peut-être déjà examiné les résultats sur votre téléphone si vous avez sélectionné l'option option e-mail). Ou, plus simple encore, surfez simplement sur votre tableau de bord exécutif de n'importe où pour voir ce qui s'est passé dans la nuit. La première liste de tests (nom Contoso Department Up…) s'affiche avec un gros bouton vert Réussir, les données et l'heure de la dernière exécution, et un graphique à barres indiquant que 100 % des 10 dernières exécutions ont réussi » title= »Test-Studio-E2E-Scheduling-19-Executive-Dashboard »/>[19659005]Et vous pourrez ensuite revenir à votre vrai travail.
Annexe : Configuration des services de test
Juste pour être clair : vous n'aurez presque certainement pas besoin de configurer TSS – les valeurs par défaut définies lors de l'installation de TSS sont généralement correctes. Mais si Test Studio ne vous permet pas de programmer un rapport (et que vous avez confirmé que TSS est installé) ou si vous recevez un message d'erreur lorsque vous travaillez avec la planification, vous devrez peut-être modifier les paramètres par défaut de TSS.
Vous pouvez démarrer l'outil de configuration de TSS en tapant "Configure Test Studio Services" dans le menu Windows et en appuyant sur la touche Entrée. Utilisez le guide d'exécution planifiée à distance Configuration d'une seule machine pour examiner les paramètres de TSS et diagnostiquer/résoudre les problèmes.
Vous pouvez également trouver des informations utiles dans les journaux d'application de Test Studio sur tout problème que vous rencontrez. Pour obtenir des informations sur le journal, démarrez Test Studio, ouvrez un projet et, dans la liste déroulante Aide dans le coin supérieur droit de la fenêtre Test Studio, sélectionnez Activer la journalisation. Effectuez la tâche qui vous pose problème, puis, de retour dans la liste déroulante Aide, sélectionnez Afficher le journal pour consulter les journaux de Test Studio.
Si votre problème est lié au serveur de stockage, la cause la plus probable est qu'une version antérieure à 2018/version 4.0 de MongoDB est installée lorsque vous TSS installé. TSS ne remplacera pas les versions existantes de MongoDB, mais TSS ne fonctionnera pas non plus avec une version antérieure à la version 4.0. Si vous avez installé une version antérieure de MongoDB, vous devrez mettre à niveau MongoDB vers la version 4.0 ou ultérieure. Après avoir mis à niveau MongoDB, vous devrez revenir à l'outil de configuration TSS pour mettre à jour les informations affichées dans les onglets MongoDB et Stockage avec vos nouveaux paramètres d'installation.
Si vous rencontrez un conflit de port avec le tableau de bord exécutif, vous pouvez modifier le port utilisé par le tableau de bord dans l'onglet Tableau de bord exécutif de l'outil de configuration (ne n'oubliez pas de cliquer sur le bouton Appliquer si vous apportez une modification). Vous devez également confirmer que le nom d'hôte/IP et le port de l'emplacement du service de stockage dans l'onglet Tableau de bord exécutif correspondent aux paramètres de l'onglet Planification.
Test Studio ne s'exécute pas avec des privilèges d'administrateur et il est possible que Test Studio n'ait pas accès aux ports dont il a besoin. Dans ce cas, accédez au dernier onglet de l'outil de configuration (l'onglet Configuration du port non administrateur) et cliquez sur le bouton Accorder l'accès pour donner à tous les utilisateurs authentifiés l'accès aux ports dont TSS a besoin (si vous le souhaitez, vous pouvez modifier le groupe d'utilisateurs spécifié dans cette boîte de dialogue pour limiter l'accès au port à un groupe plus restreint).
P.S. Je tiens à remercier Elena Tsetkova et Asya Ivanova pour leur aide dans la rédaction de cet article de blog.
Source link