1

QuestionDevrais-je mettre mes tests de régression automatisés dans une application Web?

Est-il utile la construction d'un front-end d'applications Web pour les tests de régression automatisés de mon ministère? J'ai cherché un peu et je ne pense pas que ce genre de chose existe. Fondamentalement, l'application Web permettrait à un utilisateur de spécifier une URL, des entrées attendues et des sorties attendues, ainsi qu'une URL de retour attendue. Sur le back-end, un navigateur sans écran serait en cours d'exécution sur le serveur pour tester le scénario défini par l'utilisateur, probablement en utilisant des appels à un navigateur sans tête ... J'ai cherché un peu pour voir si quelque chose d'aussi simple que cela existe mais je n'ai pas eu de chance. J'ai trouvé beaucoup d'outils pour permettre le fonctionnement programmatique des commandes du navigateur, mais une interface web pour tester une autre application web que je n'ai pas.

Contexte

Mon équipe a des tests de régression automatisés dédiés que les testeurs exécutent sur leurs machines locales. Les tests sont écrits en Python, utilisent des plugins d'intégration Selenium et utilisent une feuille de calcul Excel comme entrée pour tester. Ils sont gérés par le département QA.

Problème

  • Personne en dehors de l'équipe de QA sait l'ampleur de ces tests de régression sont parce qu'ils existent que sur les ordinateurs portables individuels.
  • Ils n'ont pas de référentiel central, et l'équipe de développement n'a aucun moyen de mettre à jour activement ces tests lorsque nous construisons de nouvelles fonctionnalités. Nous devons laisser à 100% jusqu'au département QA. Les analystes commerciaux n'ont pas accès aux résultats de ces tests . A cause de tout cela, beaucoup d'incertitude existe autour de notre tests automatisés plus réticentes à changer les choses sans instruire l'équipe d'assurance qualité pour effectuer une régression manuelle à grande échelle essais ...

Cela m'a conduit à envisager de mettre tous nos tests Selenium dans le nuage derrière une interface Web conviviale que tout le monde peut utiliser et accéder à partir de n'importe où. Ils pourraient alors facilement créer de nouveaux tests en utilisant des menus déroulants. Tout le monde, les développeurs, les testeurs et les analystes métier peuvent voir ce qui est couvert dans une séquence de test et les mettre à jour au fur et à mesure que nous ajoutons de nouvelles fonctionnalités. Je crois que cela rendrait aussi plus facile le fait que les jobs de Jenkins déclenchent des tests à intervalles réguliers si l'application web affichait des hooks de service web pour jenkins ... Mais je sens que je réinvente peut-être la roue. Est-ce que ce que je propose de construire en vaut la peine?

Répondre

1

Personnellement, je ne passerais pas trop de temps à créer un site Web pour accepter les commentaires des utilisateurs pour créer un script. Au lieu de cela, je passerais ce temps à créer un cadre de test solide et utiliser Jenkins pour déclencher les tests.

Vous devez également envisager la maintenance du «site Web» à l'avenir. Que se passera-t-il si une nouvelle fonctionnalité doit être incluse dans le site Web? L'équipe QA/BA dépendra du développeur pour ajouter la fonctionnalité.

Je pense qu'il est préférable d'utiliser un framework à base de mots clés - où vous pouvez écrire l'ensemble de votre test dans une feuille de calcul. [Dans mon projet QA personnes qui ne sont pas familiers avec la programmation créer des scripts de test avec cette approche].

En tant qu'application Web Jenkins - n'importe qui peut déclencher vos tests de régression automatisés.Même les BA (dans mon projet, c'est ce que j'ai fait). Aucune compétence technique n'est requise. Nous pouvons également transmettre des paramètres via jenkins. Les paramètres peuvent être n'importe quoi du texte à un fichier. Ainsi, vous pouvez télécharger un fichier qui contient les étapes à exécuter pour le travail jenkins et le reste doit être pris en charge par votre cadre de test.

Vous auriez certainement besoin d'un référentiel central. C'est un must have. Vous pouvez regarder serveur VisualSVN. C'est facile et GRATUIT.


mots-clés cadre Driven utilisant Sélénium:

http://www.testautomationguru.com/keyword-driven-framework-for-localization-testing-using-selenium-webdriver/

régression continue & résultats:

http://www.testautomationguru.com/continuous-regression-testing-best-practises/

test de fumée après chaque construction:

http://www.testautomationguru.com/automated-smoke-test-best-practises/

+0

Avec les utilisateurs de l'application Web ajouterait de nouveaux cas de tests à l'aide de l'interface utilisateur. Leur serait pas de codage. Pensez à l'interface Web en remplacement des feuilles de calcul Excel que nous utilisons actuellement localement. Tout l'intérêt de l'interface Web est de rendre le processus plus convivial ... Dans votre système, les chefs de projet ou les analystes métiers regardent-ils vos feuilles de calcul? –

+0

J'ai tout compris de votre question. Si vous avez des ressources/temps/budget - oui - allez-y. Ce sera vraiment bien d'avoir une interface utilisateur pour créer des scripts. Mais - considérez la partie de maintenance aussi bien. Certainement, il ne va pas être une activité de développement 1 fois et l'utilisera pour toujours !! – vins

+0

Merci. Je considère cette option. Une partie de ce que j'ai évité est que les feuilles de calcul ne semblent pas fournir beaucoup de transparence dans notre couverture des besoins de l'entreprise. Surtout s'ils sont à l'intérieur de jenkins et les résultats aussi. Actuellement, lorsque des bogues sont découverts, les gens commencent à demander des tests plus stricts, mais comment quelqu'un sait-il ce que c'est si les cas de test sont intégrés dans Jenkins? –