1 - CAMANO pour gérer et exécuter les cas de tests
La nouveauté la plus visible est l’implémentation du nouveau client CAMANO, un client riche au look & feel proche de Windows Media Player avec une couche de présentation écrite en WPF. Les équipes de tests n’auront plus besoin de s’adapter au client Visual Studio (avec notamment les check in / check out des cas de tests par exemple).Il est clair que ce nouveau client va grandement simplifier la mise en place des équipes de tests et contribuer à une augmentation de la productivité des équipes et de la qualité.
CAMANO fonctionne sous deux modes:
- Planification, Analyse et Reporting sur l’activité de test
- Exécution des tests et Création / Transmission des bugs reproductibles aux développeurs.
Ci dessous, le nouveau client Microsoft Test runner permettant d'exécuter les tests, publier les résultats de tests et créer des bugs incluant captures d'écran, séquence video du test (optionnel), détails des étapes du test et transmission des logs d'erreur (Proteus). Ce client est appelé à partir de Camano.
Cette interface permet d'enregistrer la séquence d'actions du testeur, la séquence video du test, de stocker les captures d'écran effectuées par le testeur ainsi que des commnentaires. L'ensemble des ces informations seront encapsulées dans un Bug si le testeur décide d'ouvrir un incident de type bug à la suite du test. De plus, à chaque étape, le testeur indique le résultat : Success, Failed ou non conclusive. Ci dessous un aperçu du cas de test complété ainsi qu'une capture d'écran du bug crée avec les informations automatiquement attachées.
Si l'on regarde le formulaire du work Item crée par le testeur, dans l'onglet Détails, on constate que les actions du test ont été reportées ce qui va aider le développeur à reporduire le bug en reproduisant simplement les étapes mentionnées.
Dans l'onglet Attachments, on retrouve les pièces jointes correspondant à la capture d'écran prise par le testeur, la séquence video du test ainsi que le détail des actions du testeur.
L'onglet System Info contient les informations système de la machine de test
- Les étapes détaillées pour la reproduction du bug
- La transmission des logs d'erreurs (Proteus).
- Les captures d’écran prises par le testeur
- La séquence vidéo du test (si option activée)
- La publication des résultats de test pour l’équipe projet.
- La transmission des bugs pour résolution aux développeurs.
2 Automation Strips : l'automatisation des tests manuels
Ce nouveau concept consiste en l’automatisation des tests manuels pour accélérer leur exécution et accèlerer les étapes répétitives en mode semi automatique. Cette fonctionnalité fait maintemant partie de la nouvelle version de Team Test. Cette fonctionnalité, intégrée au Test Runner, est basée sur un enregistreur d’étapes permettant de faciliter la création de tests automatisés.
Cette fonctionnalité se met en place en deux temps :
Première étape : Le testeur exécute les étapes du cas de test manuellement. Les étapes sont automatiquement enregistrées par l’outil. Des marqueurs sont ajoutés pour chaque étape et chaque étape est marquable comme success, failed ou non conclusive interactivement par le testeur.
Deuxième étape : Dès la deuxième exécution, le testeur peut se rendre automatiquement au marqueur de son choix, l’ensemble des étapes intermédiaires seront rejouées automatiquement. L’outil permet également de pré visualiser le scénario ou encore de le modifier. Ci dessous, une capture d'écran montrant le menu contextuel permettant de lancer une séquence limitée par deux marqueurs en mode automatique :
3 Coded UI Tests : Full Automation
Cette nouvelle fonctionnalité consite à automatiser totalement les tests d'interfaces graphiques de manière à pouvoir les jouer lors de builds automatisés par exemple. Cette technologie de tests codés offre la possibilité d’automatisation pour le remplissage automatique de formulaires (y compris en mode Data Driven) , l'interaction directe avec les contrôles des formulaires et la vérification automatique des résultats attendus !, en mettant à disposition des outils et un framework de tests ciblant directement les clients Web (avec le support d'Ajax) ainsi que les clients riches.
Le point fort est également la Génération de tests codés à partir de tests automatisés par enregistrement (Automation Strips)
3 TEAM LAB
Team Lab est indubitablement la fonctionnalité la plus inattendue de Rosario (non implémentée dans la CTP d'Avril), qui vient définitivemnet démontrer la volonté de Microsoft d'asseoir une politique forte dans le domaine de la qualité des développements effectués sur la palte forme Rosario. Encore faut il avoir les moyens de sa politique et donc pour pouvoir tester une application il faut impérativement disposer d'environnements dignes de ce nom. Avec Team Lab, Microsoft erradique véritablement cette pierre d'achoppement.
Au travers de Team Lab, Microsoft a voulu apporter une solution aux probblématiques récurrentes suivantes :
- L’importance des temps passés à la mise en place et la configuration d’environnements de tests entrainant de la perte en productivité
- Le manque d’accès à des environnements de tests adéquats se traduisant par des baisses en terme de qualité
- Le syndrome de non reproductibilité des bugs pour les développeurs qui ralentit l’atteinte des seuils de qualités pour permettre la livraison des logiciels.
- La multiplication des environnements entrainant des couts en terme de machines, et ressources diverses qui ne sont pas toujours rationalisées.
A l’ensemble de ces problématiques, Les équipes de Microsoft répondent par la mise à disposition d’un tout nouveau module qui sera inclus dans Camano : Team Lab.
L’objectif de Team Lab consiste en :
- L’amélioration de la productivité : en permettant le développement et le test de logiciels sur des environnements différents, rapides à configurer et à mettre en place ainsi que la capacité à automatiser la construction de ces environnements et les processus de tests
- L’amélioration de la qualité : Permettre aux testeurs de rejouer des bugs détectés en utilisant des Clichés d’environnements (Snapshots), et permettre de tester tot et souvent sur des environnements proche de la production.
- Réduire le TCO des environnements de test : Permettre une utilisation rationnelle d’espace disque, de matériels, d’électricité et de ressources humaines.
Team Lab s’appuie sur la technologie de Virtualisation pour déployer et purger des environnements de test. Team Lab est intégré au module Team Edition et permet une automatisation de bout en bout de l’activité de test.
Team Lab permet de gérer les environnemnets de tests à partir d'une "System Library"
Ci dessous, la page d'accueil de Team Lab permettant d'accèder entre autre à la librairies des machines de tests disponibles
Puis de déployer ces environnements crées sur des serveurs faisant partie d'un pool de ressources déclarrés, on notera la possibilité de récréer un environnment de tests en quelques minutes!
Le développeur bénéficie alors du même environnement de test, auquel il accède par un simple clic sur le lien encapsulé dans le Work Item de type bug qui lui a été transmis.
Le provisionnement d'environnements de tests peut également être déclenché par la complétion d'un build automatisé (cf nouvelle architecture de Team Build avec l'intégration de Windows Workflow Foundation) de même que la réinitialisation d'un environnement de tests.
CONCLUSION
Les Principaux objectifs de Team Test sont donc :
- Aligner l’assurance qualité dans l’organisation du cycle de vie projet
- Gérer la qualité au plus tôt dans le cycle de vie projet
- Augmenter la productivité des équipes de Test
- Eliminer le syndrome de non reproductibilité des bugs
- Mise à disposition d’outils modernes, et simples à utiliser
- Capacité de priorisation des tests ( Connaitre les tests impactés par des modifications de code)
- Capacité de calcul de Taux de couverture des tests (par rapport au WBS Projet)
Aucun commentaire:
Enregistrer un commentaire