Automatisation Plan: Avantages et Inconvénients

Slides:



Advertisements
Présentations similaires
Mustapha EL FEDDI Tests Mustapha EL FEDDI
Advertisements

Tests et Validation du logiciel
Traitement du signal.
TOUQUET Arnaud ▪ GI05 BLONDEEL Igor ▪ GM05
Simulateur de chaîne de production par Icobjs
Guillaume KRUMULA présente Exposés Système et Réseaux IR3 Mardi 5 Février 2008.
Les tests et les logiciels de gestion de tests
Organiser des Tests dans un projet
A L I M E N T A T I O N A G R I C U L T U R E E N V I R O N N E M E N T PhpMyGI une interface générique mysql Interface générique ? Pourquoi une interface.
Page 1 Déboguer un programme Java Jacques Lonchamp.
INITIATION à la PROGRAMMATION STRUCTUREE
Test de logiciel GLG101 AP.TELLE & S.MILOVANOVIC MAI 2007.
Interface Homme Machine IHM Pro
Introduction aux CMS.
Sujets de mémoire Mercury Génération automatique de XML Gestion et debugging d'ontologies Un éditeur intelligent pour Mercury (sans stage) Conception d'un.
Introduction aux Web Services Partie 1. Technologies HTML-XML
Formation Centra - GDE.
CPI/BTS 2 Programmation Web Introduction au PHP
Par Fabrice Pasquier Cours IV
Quelques algorithmes sur calculatrices
Gestion des systèmes d’information
Quelques bases sur les diaporamas Avec lapplication PowerPoint ISSUE DE LA SUITE Microsoft OFFICE 2003 Premiers pas...
Calculatrice Financière Android
Le langage ASP Les formulaires avec Request. Les formulaires sont employés pour transmettre des informations saisies par un client à une application Web.
Sélection automatique de jeux de tests pour les logiciels Software Modeling and Verification group 1. Modélisation2. Sélection des Tests 3. Exécution et.
CSI3525: Concepts des Languages de Programmation
LIFI-Java 2004 Séance du Jeudi 9 sept. Cours 1. La notion de langage Décrire une tâche à effectuer –programme Écrire à un haut niveau –facile pour lutilisateur.
Partie II Sémantique.
L3 Module Libre Année universitaire Initiation à la Bioinformatique Jean-Michel RICHER.
Initiation aux bases de données et à la programmation événementielle
Tour d’horizon des outils d’aide au développement Java
Content Management System CMS. Pourquoi ? Obligation de ressaisir des contenus publiés à plusieurs endroits Pas d’outils de gestion de qualité de l’information.
Boucles et Tests For( in ) { } While( ) { } Les exécutions conditionnelles (if.. else) peuvent être évitées avec des indexations logiques. Exemples: y=numeric(length(x));
Développement logiciel en méthode agile
Qu'est-ce qu'un ERP  Outils automatisé pour modéliser les comportements d'une entreprise afin de les rendre plus automatiques.
Les tests.
« Validation Formelle de Systèmes Interactifs »
 Syntaxe du langage PHP
Introduction au Génie Logiciel
Arbre GénéalogiqueDiagramme de Classes Comment la visualisation d’une hiérarchie de classes facilitera le travail de notre client ?
13 juin Le mécanisme de templates de Sympa.
Refonte du module Règlement/Livraison
BEWITCHED 12/10/2006 Soutenance GLAO #5 slide 1 Soutenance GLAO #5 AGL & SYGIME Bewitched Team 12 Octobre 2006.
UMR 7619 Sisyphe Avril 2012 Alexandre Pryet Le langage une introduction pragmatique Cacul itératif.
© WYNIWYG / Communication, reproduction interdite sauf autorisation.
Présentation du développement du projet.  Introduction  Conception et méthodes  Developpement  Conclusion 2.
Struts.
MOCK.
Le Browser hiérarchique de Classes Java : En quoi cette application pourra faciliter le travail de Mr Leblanc ? GROUX Julien & MOULINIER Georges.
Le Browser hiérarchique de Classes Java : En quoi cette application pourra faciliter le travail de Mr Leblanc ?
Equipe HomECOntrol.  Documents de référence  Mission du produit  Exigences fonctionnelles  Hardware  Software  Exigences opérationnelles  Interfaces.
Introduction à PHP TOURNADRE Guillaume - Informatique Réseaux URL :
Des éléments de la valeur…
Victor Sabourin Marie Sévilla Fraysse Pauline They Mathieu Vayssières
Jeremy ROY – sept Support TD
Victor Victor Sabourin Marie Sévilla Fraysse Pauline They
Initiation aux bases de données et à la programmation événementielle
Scénario Les scénarios permettent de modifier la position, taille … des calques au cours du temps. Son fonctionnement est très proche de celui de Macromedia.
Flash MX – Séance 2 Interactions & ActionScript David Rapin Si28 P06.
Introduction au HTML Qu’est ce que le HTML ?
Sujet: Portail Faac 180° Parties mécaniques traitées par M. Traourouder Erwann et M. Mauget Thomas. Et les parties électroniques traitées par M. Batté.
PRÉSENTATION AGL LES TESTS LOGICIELS LES TEST LOGICIELS 1 Mickael BETTINELLI Brandon OZIOL Gaétan PHILIPPE Simon LUAIRE.
Java Réalisé par: Mouna POKORA. PLAN: Définition : Historique: Caractéristiques: un langage orienté objet: un langage interprété : un langage portable:
TECHNOLOGIE – Avril 2008 Projet de programme 4 e : Thème : Confort et domotique Equipement intérieur Equipement extérieur Electroménager Vidéo, photo Son.
FACTORY systemes Module 5 Section 1 Page 5-3 Les scripts de traitement FORMATION INTOUCH 7.0.
APP-TSWD Apprentissage Par Problèmes Techniques des Sites Web Dynamiques Licence Professionnelle FNEPI Valérie Bellynck, Benjamin Brichet-Billet, Mazen.
Jenkins, votre serviteur C. Loomis (CNRS/LAL) Journée LoOPS 11 décembre 2012.
WHAT IS THIS ? Serveur d’intégration Environnement JAVA Open Source Ou logiciel d’intégration continue.
Plan 1. Présentation du sujet 2. Outil de tests 3. Critères de choix
Transcription de la présentation:

Automatisation Plan: Avantages et Inconvénients Exemple de logiciels d’automatisation Exemple de fonctions Exemple d’automatisation d’un test Automatisation

Automatisation Plan: Avantages et Inconvénients Exemple de logiciels d’automatisation Exemple de fonctions Exemple d’automatisation d’un test Automatisation

Automatisation: Avantages et Inconvénients Avantages de l’automatisation: Meilleur couverture de l’application: Exécution de plus de tests automatiques que manuels en un même intervalle de temps. Minimiser les problèmes de non régression => Focalisation des tests manuels sur les nouvelles fonctionnalités Meilleur fiabilité de l’application Meilleur couverture Stabilité du produit Résultat rigoureux Pas d’intervention humaine Automatisation

Automatisation: Avantages et Inconvénients Avantages de l’automatisation: Gain de temps Exécution rapide Concentration sur l’analyse du problème Détection rapide des problèmes (bugs) Gain de temps pour la livraison Automatisation

Automatisation: Avantages et Inconvénients Inconvénients de l’automatisation: Coût pour la mise en place Contrainte sur l’écriture du test Le test doit être robuste => même après une modification de l’interface graphique. On ne peut automatiser l’application dès lors qu’on connait l’ interface graphique => Plus facile d’écrire un test manuel qu’un test automatique Automatisation

Automatisation Plan: Avantages et Inconvénients Exemple de logiciels d’automatisation Exemple de fonctions Exemple d’automatisation d’un test Automatisation

Automatisation: Exemple de logiciels Logiciels d’automatisation de tests fonctionnels Editeur Mercury: Winrunner (langage utilisé se rapproche du java) Quick Test Pro (langage utilisé se rapproche du VBScript) Editeur Seapine Software: QA Wizard Editeur Borland: SilkTest Automatisation

Automatisation Plan: Avantages et Inconvénients Exemple de logiciels d’automatisation Exemple de fonctions Exemple d’automatisation d’un test Automatisation

Automatisation: Exemple de fonctions Attendre l’apparition d’une page Fonction « sync » Browser("Browser").Page("Air France").Sync Vérifier la présence d’un objet Fonction « exist » QTP: Browser("Browser").Page("billet avion").WebList("aeroport").Exist Browser("Browser").Page("billet avion").WebEdit("aeroArr").Exist Winrunner: obj_exists (strObjChecked, 10); Automatisation

Automatisation: Exemple de fonctions Récupérer les propriétés d’un objet Fonction « GetROProperty » Browser("Browser").Page("billet avion").WebList("aeroport") .GetRoProperty(« name") => On récupére le nom de l’objet « aeroport » Browser("Browser").Page("billet avion").Link("GoTo") .GetRoProperty("href") => On récupére la cible du lien « GoTo » Browser("Browser").Page("billet avion").WebButton("submit") .GetRoProperty("value") => On récupére le nom afficher pour le bouton « submit » Automatisation

Automatisation: Exemple de fonctions Condition et boucle Fonction « If » QTP: If (Browser("Browser").Page("billet avion").Exist) then Browser("Browser").Page("billet avion").WebButton("valid").Click else if( …)then else … End if Winrunner: if (obj_exists(« billet avion »,5)){ web_image_click(" valid ", 1, 1); else …; } Automatisation

Automatisation: Exemple de fonctions Condition et boucle Fonction « while » QTP: While(not Browser("Browser").Page("billet avion").Exist and i < 10) wait(1) i = i + 1 Wend Winrunner: while (obj_exists(“billet avion”)&& i<10){ wait(1); i ++;} Automatisation

Automatisation: Exemple de fonctions Case Fonction « case » QTP: Dim var Select Case var Case « rouge » ‘Instruction Case « vert » ‘Instruction Case else ‘Instruction End select Winrunner: Switch(var){ case “rouge” #Instruction break; case “vert” #Instruction break; } Automatisation

Automatisation: Exemple de fonctions Création du rapport Fonction « Reporter.ReportEvent [Statut],[StepName],[Detail] » QTP: If (Browser("Browser").Page("billet avion").Exist) then Reporter.ReportEvent micDone, "Résa", "OK" else Reporter.ReportEvent micFail, "Résa", "KO" End if Statut peut être égal à "micDone", "micPass", "micFail", "micWarning«  Winrunner: if(obj_exists(« billet avion »,5)){ tl_step(“Résa",passed,”OK”); Else tl_step (« Résa »,failed, « KO »);} Automatisation

Automatisation Plan: Avantages et Inconvénients Exemple de logiciels d’automatisation Exemple de fonctions Exemple d’automatisation d’un test Automatisation

Automatisation: Exemple de tests automatiques Etapes de création d’un test automatique par le logiciel Quick Test Pro: Enregistrement d’un scenario pour permettre de créer un bibliothèque d’objets (« object repository ») (cf vidéo) On obtient donc un code comme ceci: « Browser("Browser").Page("Page").Sync Browser("Browser").Navigate "http://www.airfrance.fr" Browser("Browser").Page("billet avion : Air France").WebEdit("aeroportArrivee").Set "toronto" Browser("Browser").Page("billet avion : Air France").WebList("jourAller").Select "15" Browser("Browser").Page("billet avion : Air France").WebList("moisAller").Select "septembre" Browser("Browser").Page("billet avion : Air France").WebList("jourRetour").Select "20" Browser("Browser").Page("billet avion : Air France").WebList("nbPassagers").Select "2" Browser("Browser").Page("billet avion : Air France").WebList("typoPassagers").Select "Etudiant Majeur (25 - 26 ans)" Browser("Browser").Page("billet avion : Air France").Link("rechercher").Click » Automatisation

Automatisation: Exemple de tests automatiques On peut modifier les propriétés qui permettront de retrouver l’objet dans la page web: Automatisation

Automatisation: Exemple de tests automatiques On peut paramétrer la valeur des objets: Browser("Browser").Page("billet avion : Air France").WebList("aeroportDepart"). Select Environment("Dest_Aeroport") Au lieu de: Select (« Nice »)   Automatisation

Automatisation: Exemple de tests automatiques Modification du test ainsi enregistré pour le rendre plus robuste et modulable Exemple du code: «Adresse Browser("Browser").Page("Page").Sync Browser("Browser").Navigate "http://www.airfrance.fr" 'Attendre que la page soit apparue Dim i while(not Browser("Browser").Page("billet avion : Air France").Exist and i < 5) wait(1) i = i+1 wend if(Browser("Browser").Page("billet avion : Air France").Exist)then reporter.ReportEvent micPass,"Page accueil AirFrance","OK" else reporter.ReportEvent micFail,"Page accueil AirFrance","KO" ExitRun(0) end if 'Element de recherche Browser("Browser").Page("billet avion : Air France").WebList("aeroportDepart").Select Environment("Depart_Aero") » Automatisation

Automatisation: Exemple de tests automatiques 2 Exemples de tests finis 1ier exemple: 1 passager Paris-Toulouse 2ieme exemple: 2 passagers Paris-Nice Automatisation

Merci pour votre attention Automatisation Merci pour votre attention Automatisation