-
Automatisation des tests
1
Workpackage
Prepare Testing Lab
& Estimate testing
schedule
Architectureproof of concept
High Level Requirements
BAT ArchitectureDocument
Create Test Case
Detailed Requirement
User Interface Prototype
Implement Testmaterial
&Establish test
Planning
Test Plans
Data sheetScript & scenarios
Test Planning
Validation(Run Test)
Delivery Document
Change Request
Executed Test Plans
Evaluate &
Present test results
Test Report Sign off
Iterationsequence
-
Automatisation
Automatisation 2
Plan:
Avantages et Inconvnients
Le processus dautomatisation des tests
Exemple de logiciels dautomatisation
Exemple de fonctions
Exemple dautomatisation dun test
-
Automatisation
Automatisation 3
Plan:
Avantages et Inconvnients
Le processus dautomatisation des tests
Exemple de logiciels dautomatisation
Exemple de fonctions
Exemple dautomatisation dun test
-
Automatisation:Avantages et Inconvnients
Automatisation 4
Avantages de lautomatisation:
Meilleur couverture de lapplication: Excution de plus de tests
automatiques que manuels en un mme intervalle de temps.
Minimiser les problmes de non rgression => Focalisation des
tests manuels sur les nouvelles fonctionnalits
Meilleur fiabilit de lapplication Meilleur couverture
Stabilit du produit
Rsultat rigoureux
Pas dintervention humaine
-
Automatisation:Avantages et Inconvnients
Automatisation 5
Avantages de lautomatisation: Gain de temps
Excution rapide
Concentration sur lanalyse du problme
Dtection rapide des problmes (bugs)
Gain de temps pour la livraison
-
Automatisation:Avantages et Inconvnients
Automatisation 6
Inconvnients de lautomatisation: Cot pour la mise en place
Contrainte sur lcriture du test
Le test doit tre robuste => mme aprs une modification de
linterface graphique.
On ne peut automatiser lapplication ds lors quon connait l
interface graphique
=> Plus facile dcrire un test manuel quun test
automatique
-
Automatisation
Automatisation 7
Plan:
Avantages et Inconvnients
Le processus dautomatisation des tests
Exemple de logiciels dautomatisation
Exemple de fonctions
Exemple dautomatisation dun test
-
Le processus dautomatisation des tests sinscrit dans une
stratgie qualit denvergure.
Il ncessite une tude pralable et le respect de diffrentes tapes
telles que : lvaluation des cots et dlais, le choix dun outil du
march ou dun dveloppement interne spcifique, la conception des
scnarii de test, lexcution et lanalyse des rsultats.
Automatisation 8
-
Automatisation 9
-
1. Le choix de lautomatisation
Lentreprise doit avant tout trouver son intrt automatiser le
processus de test car cest un investissement important (Cot, dlais,
ressources). Il faut valuer tous les cots qui touchent de prs ou de
loin sa mise en place. Il peut sagir de lachat des outils eux-mmes,
de la formation dispenser ou encore des connaissances acqurir. Rien
ne doit tre oubli o laiss au hasard.
Automatisation 10
-
1.1 Dfinition des besoins Les outils de tests sont nombreux et
ne correspondent pas
tous les besoins, cest pourquoi il est important de mettre en
vidence les critres qui vont permettre la slection des outils
utiliser. Toutes les phases du processus de test ne sont pas
toujours automatisables.
La candidate vidente lautomatisation est sans conteste la phase
de non-rgression. Un mme scnario de test pourra tre rpt autant de
fois que ncessaire par les outils automatiques et assurer la
non-rgression dune version lautre de lapplication. Les autres
phases moins prioritaires, peuvent galement sy prter, partir du
moment o elles remplissent un critre commun : La reproductibilit
des tests.
Les tests alatoires peuvent galement tre automatiss. 11
-
1.2 Evaluation des cots et dlaisLutilisation dun outil de test
doit tre envisage sur une
priode suffisamment longue pour permettre ce retour sur
investissement. Il ne sagit pas dune opration instantane, mais dun
investissement long terme.
Ces outils sont donc avantageux sur plusieurs cycles. Il est
pour cela ncessaire, lors de la ralisation du budget, de fixer des
objectifs moyen voir long terme en chiffrant avec un maximum de
prcision la partie des tests qui va tre automatise.
Il apparat dans un premier temps que la mise en place de telles
solutions, cour terme, savre plus coteuse que le recrutement de
testeurs.
Automatisation 12
-
2. La dmarche de lautomatisation
13
ATLM (Automated Testing Life-cycle Methodology)
-
2.1 Construction du testIl est ncessaire de se fixer des
objectifs des tests.
Les objectifs de chaque phase de tests seront identifis et
dfinis en considrant :
Les exigences fonctionnelles et de performance (en tenant compte
aussi des contraintes particulires de lenvironnement final
dutilisation du logiciel), exprimes dans les documents de
spcification / conception du produit logiciel.
Les exigences en matire de qualit et de sret de fonctionnement
(rectitude, robustesse, facilit de maintenance, disponibilit,
scurit, etc., cf. critres de qualit).
Toutes les contraintes denvironnement identifies (utilisation
d'une base de donnes, utilisation des nombres rels, langage de
programmation, logiciel temps rel, etc.).
Les exigences lgales et rglementaires. Les contraintes de cot et
de temps de test. 14
-
15La dmarche de test automatique
2.2 Lautomatisation du test
-
2.2.1 LimplmentationLimplmentation des cas de test et plus
particulirement des
plans de test passe par llaboration de scripts de tests(suivant
les outils), de scenarii (pour les automates), de jeux dessai et
par la collecte des rsultats attendus.
Un script de test se matrialise typiquement par un fichier se
composant dune srie dinstructions dans un langage formel, qui va
tre interprt par un outil de test automatis. Un mme script de test
peut reprsenter une partie ou la totalit dun plan de test.
Les valeurs dentres dun plan de test sont gnralement parties
intgrantes du script au mme titre que les rsultats attendus,
cependant, il peut arriver que ces valeurs soient contenues dans un
fichier spar.
Automatisation 16
-
2.2.1 Limplmentation (2)Les pr-conditions dun test plan doivent
galement faire partie
du script de telle manire que le test soit excut dans de bonnes
conditions. Par exemple, si un test ncessite la prsence dun fichier
particulier ou de donnes contenues dans une base de donnes, il
faudra sassurer que ces derniers sont correctement initialiss pour
contenir les informations dont le test a besoin.
Certains tests ncessitent parfois des configurations matrielles
ou logicielles spciales, par exemple une connexion au rseau ou une
imprimante. Ceci fait galement partie de lenvironnement de test
quil faudra mettre en place avant que le test automatique soit
excut.
Automatisation 17
-
2.2.1 Limplmentation (fin)Les rsultats attendus peuvent tre
organiss dans un fichier
qui sera en suite utilis par loutil de test automatique.
Cependant, la dtermination des rsultats attendus savre tre une
tache relativement plus complexe que pour les tests manuels.
En effet, elle ncessite une finesse dans la description bien
plus grande que pour le test manuel, puisquun automate ne possde
pas lintelligence du testeur et donc il faut dterminer avec
prcision les valeurs vrifier sans en oublier, car il ny aura pas
dinitiative de la part de lautomate pour trouver une erreur qui
ntait pas pralablement spcifie.
Il faudra donc observer la plus grande rigueur lors de cette
tape. 18
-
2.2.2 Excution du testLapplication ou le service informatique
sont excuts par
lintermdiaire de loutil de test. Cest donc lui qui va assigner
les valeurs dentre et rcuprer les valeurs de sortie, quil va
mmoriser pour ltape suivante cest dire la comparaison des rsultats.
Il doit galement connatre la marche suivre en cas danomalie
rencontre.
En effet, il peut soit stopper immdiatement aprs avoir rencontr
une anomalie, ou bien poursuivre le test. Tout dpend des
rpercutions dune anomalie sur le reste du test.
Par exemple si le programme narrive pas se connecter la base de
donnes il est strictement inutile de poursuivre puisque aucune
information ne pourra tre visualise.
Automatisation 19
-
2.2.3 LAnalyseL'analyse des comptes rendus (rapports) de tests
doit tre
mene de faon systmatique et critique, notamment pour la
qualification des anomalies. En effet, on peut avoir de fausses
anomalies. Aprs l'excution d'un scnario, l'quipe de test compare le
rsultat constat au rsultat attendu.
Une procdure en chec ne correspond pas forcment une erreur dans
l'application, il peut notamment s'agir :
Des modifications dans l'application (sans modification des
procdures);
Dune erreur dans la configuration de l'environnement; Dune
erreur dans la procdure de test; Dune erreur de logique du scnario
(script).Automatisation 20
-
2.2.3 LAnalyse (2) Cest toute la diffrence quil y a entre
comparer et vrifier,
loutil peut comparer mais rarement vrifier, ce qui reste une
tche gnralement humaine (parce quelle ncessite plus
dintelligence).
De la mme manire, une excution sans erreur ne garantit pas
totalement contre des incidents aprs la mise en production. Le
problme peut provenir d'un manque de sensibilit de l'outil de test,
ou d'une procdure de test pas assez descriptive. C'est pourquoi il
est important de mener des revues sur les procdures avant de
dmarrer llaboration de scnarii.
L'analyse des rsultats peut confirmer la capacit des procdures
de tests trouver les erreurs.
Automatisation 21
-
Les mtriques de lautomatisation
L'utilisation de mtriques permet au chef de projet de disposer
d'indicateurs clef en termes de Qualification :
1) Couverture des tests;
2) Progression des tests;
3) Qualit de l'effort de tests.
Il existe de trs nombreuses mtriques, c'est pourquoi il est
important de dterminer celles qui sont importantes par rapport
l'organisation. Cette analyse devant se faire conjointement l'tude
de loutil.
Automatisation 22
-
1) Mtriques de couverture
Couverture des tests : Nombre total de procdures de tests /
Nombre total d'exigences de tests.
Couverture fonctionnelle : Nombre d'exigences de tests couvertes
par des procdures de test / Nombre d'exigence de test.
Automatisation 23
-
2) Mtriques de progression
Statut des Procdures de test : Nombre de procdures de tests
excutes / Nombre total de procdures de test.
Ratio des anomalies par procdure : Nombre danomalies dcouvertes
/ le nombre de procdures de tests excutes.
Age des Anomalies : Mesure le temps qui s'coule entre la
dcouverte dune anomalie (CR) et sa correction.
Analyse de l'volution du nombre danomalie : Cette mtrique permet
de suivre la tendance des anomalies par procdure teste.
Automatisation 24
-
3) Mtriques Qualit Taux de succs des tests : Nombre de tests
positifs sur le
nombre de tests excuts
Qualit des correctifs : Taux danomalies redcouvert / Taux
danomalies corriges.
Densit d'erreurs : Nombre danomalies dcouvertes / Nombre de
procdures de test excutes pour une fonctionnalit particulire
Exactitude des tests : Permet de juger de la pertinence des
tests mis en uvre. Une valeur trop faible peut la remettre en
cause. Il est important de solliciter l'intervention des
utilisateurs pour la juger.
Automatisation 25
-
Lavenir de lautomatisation dans le gnie logiciel
Cette dmarche a largement t prouve dans de nombreuses
entreprises. Il parat vident que lvolution et lmergence de
solutions professionnelles tend promouvoir le test automatique et
lui prpare un bel avenir.
Cet avenir est tout dabord assur par une communaut
particulirement active.
Pour communiquer sur lactivit du test, un certain nombre
dacteurs, principalement des industriels (Editeurs de logiciels et
SSII) aids par les directions informatiques, veulent contribuer au
dveloppement des activits du test logiciel (automatique et manuel)
ainsi qu ladoption et la gnralisation de meilleures pratiques
(normalisation).
Automatisation 26
-
Conclusion
Automatisation 27
-
Automatisation
Automatisation 28
Plan:
Avantages et Inconvnients
Le processus dautomatisation des tests
Exemple de logiciels dautomatisation
Exemple de fonctions
Exemple dautomatisation dun test
-
Automatisation:Exemple de logiciels
Automatisation 29
Logiciels dautomatisation 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
-
Exemple de logiciels (2) Selenium IBM Rational Functional Tester
TestComplete Testing Anywhere LaodRunner Visual Studio Test
Professional WATIR
Automatisation 30
-
Automatisation
Automatisation 31
Plan:
Avantages et Inconvnients
Le processus dautomatisation des tests
Exemple de logiciels dautomatisation
Exemple de fonctions
Exemple dautomatisation dun test
-
Automatisation:Exemple de fonctions
Automatisation 32
Attendre lapparition dune page
Fonction sync Browser("Browser").Page("Air France").Sync
Vrifier la prsence dun objet
Fonction exist QTP:
Browser("Browser").Page("billet
avion").WebList("aeroport").ExistBrowser("Browser").Page("billet
avion").WebEdit("aeroArr").Exist
Winrunner:obj_exists (strObjChecked, 10);
-
Automatisation:Exemple de fonctions
Automatisation 33
Rcuprer les proprits dun objet
Fonction GetROProperty Browser("Browser").Page("billet
avion").WebList("aeroport") .GetRoProperty( name")=> On rcupre
le nom de lobjet aeroport
Browser("Browser").Page("billet avion").Link("GoTo")
.GetRoProperty("href")=> On rcupre la cible du lien GoTo
Browser("Browser").Page("billet avion").WebButton("submit")
.GetRoProperty("value")=> On rcupre le nom afficher pour le
bouton submit
-
Automatisation:Exemple de fonctions
Automatisation 34
Condition et boucle
Fonction If QTP:If (Browser("Browser").Page("billet
avion").Exist) then
Browser("Browser").Page("billet
avion").WebButton("valid").Clickelse if( )thenelse End
ifWinrunner:if (obj_exists( billet avion ,5)){web_image_click("
valid ", 1, 1);else ;}
-
Automatisation:Exemple de fonctions
Automatisation 35
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
-
Automatisation:Exemple de fonctions
Automatisation 36
Case
Fonction case QTP:Dim varSelect Case var
Case rouge InstructionCase vert Instruction Case else
Instruction
End select Winrunner:Switch(var){
case rouge #Instructionbreak;case vert #Instruction break;
}
-
Automatisation:Exemple de fonctions
Automatisation 37
Cration du rapport
Fonction Reporter.ReportEvent [Statut],[StepName],[Detail]
QTP:If (Browser("Browser").Page("billet avion").Exist) then
Reporter.ReportEvent micDone, "Rsa", "OK"else
Reporter.ReportEvent micFail, "Rsa", "KO"End if
Statut peut tre gal "micDone", "micPass", "micFail",
"micWarning
Winrunner:if(obj_exists( billet avion
,5)){tl_step(Rsa",passed,OK);
Else tl_step ( Rsa ,failed, KO );}
-
Automatisation
Automatisation 38
Plan:
Avantages et Inconvnients
Le processus dautomatisation des tests
Exemple de logiciels dautomatisation
Exemple de fonctions
Exemple dautomatisation dun test
-
Etapes de cration dun test automatique par le logiciel Quick
Test Pro
Automatisation 39
1 Ouverture de QTP1.1 Slection des add-insA louverture de QTP il
faut slectionner les modules
complmentaires (Add-ins). Ces modules correspondent au langage
de programmation de lapplication tester (.NET, Java, Oracle, Web,).
Il est possible de slectionner plusieurs add-ins.
1.2 Connexion avec Quality CenterLa connexion entre QC et QTP se
fait trs simplement
partir de QTP. Il faut cliquer sur licne Quality Center
Connexion et saisir les identifiants utiliss dans QC.
-
Test automatique en QTP (2)2. Cration dun test automatisIl
existe plusieurs manires de crer un test automatis.a) Soit partir
de QTP en crant un nouveau test. Pour que
ce test se trouve dans QC, au moment de lenregistrement, il faut
slectionner longlet Quality Center Test Plan .
b) Soit partir de QC : - En crant un nouveau test de type
quicktest_test dans longlet Test Plan ;- En slectionnant
generate_script dans la partie Design Steps dun test manuel. Les
diffrents Steps seront alors des commentaires dans le test QTP.
Automatisation 40
-
Test automatique en QTP (3)3 Enregistrement dun script Pour
enregistrer un script, il faut tout dabord cliquer sur
Record de loutil QTP. Une fentre apparait avec diffrents
onglets. Ceux-ci sont
les types dapplications disponibles pour le test. Ils se mettent
jour en fonction des modules complmentaires (add-ins) renseigns
louverture de loutil.
Il faut donc choisir le type dapplication tester, indiquer si
lapplication est dj ouverte ou slectionner un fichier
excutable,
Ensuite il faut excuter manuellement le test, pendant ce temps
QTP enregistre les diffrentes actions effectues.
Automatisation 41
-
Test automatique en QTP (4)3.1 Lenregistrement en mode
normalLenregistrement en mode normal est lenregistrement par
dfaut.
QTP reconnat les objets dune application prise en charge,
dtermine le type dobjet et leur attribut une classe (Bouton radio =
WinRadioButton, liste droulante = WinComboBox).
Ensuite, il enregistre les actions effectues sur les objets.La
liste des objets et leurs proprits est sauvegarde dans un
Object Repository (rfrentiel dobjets). Les proprits dun objet
sont un ensemble de caractristiques
dfinissant laspect, les valeurs, ltat et lidentit dun objet au
sein dune application. Les proprits dobjet sont directement
extraites de lAPI de lapplication.
Automatisation 42
-
Le rfrentiel dobjets peut tre utilis pour : modifier les noms
des objets ; ajouter un nouvel objet ; configurer les proprits
utilises pour identifier un objet (ajout/suppression de
proprits).
La figure ci-dessous nous montre comment ajouter des proprits
sur un objet.
Automatisation 43
-
Test automatique en QTP (5)
3.2 Les vues de lenregistrementLenregistrement du script peut
tre visualis de diffrentes
manires.- Vue par objets.
Longlet Keyword View permet de voir lenregistrement en fonction
des objets de lapplication.
Cette vue contient un tableau disposant de plusieurs colonnes :-
Item = nom de lobjet ;- Operation = action effectue sur lobjet ;-
Value = valeur de lobjet ;- Documentation : dtail de laction.
Automatisation 44
-
Nous pouvons distinguer facilement les diffrents types dobjet
(liste droulante, bouton, ).
Il est galement possible de rajouter, partir de cet cran, des
actions sans passer par lapplication en cliquant sur Select an item
. Il faut choisir un objet et lui associer une action et une
valeur. Si tous les objets sont enregistrs dans QTP, il nest plus
ncessaire de passer par lapplication pour scripter un test.
Automatisation 45
Test automatique en QTP (6)
-
Automatisation 46
Vue par objets de QTP
-
Vue experte de QPT Pour longlet Expert View , il sagit
dafficher
lenregistrement avec le langage Visual Basic Script.
Automatisation 47
-
Ecran actif de QTP
Automatisation 48
-
Test automatique en QTP (7)
3.3 Les enregistrements Low Level et Analog Si lenregistrement
en mode normal de QTP ne permet pas
denregistrer correctement laction, il est possible dutiliser un
des deux modes suivants : Enregistrement Low level Ce mode permet
denregistrer tous les objets et oprations laide des coordonnes de
lapplication.
Voici un exemple de script gnr par cet enregistrement.
Automatisation 49
Window("Calculatrice").WinObject("5").Click
13,11Window("Calculatrice").WinObject("+").Click
20,13Window("Calculatrice").WinObject("6").Click
18,15Window("Calculatrice").WinObject("=").Click 15,12
-
3.3 Enregistrement Analog (suit) Enregistrement Analog
Avec lenregistrement Analog , QTP enregistre avec exactitude
tous les dplacements de souris et entres au clavier lis un cran ou
une fentre.
Il faut slectionner lapplication tester puis effectuer les
diffrentes actions.
Dans ce cas, le script est vu comme une seule action et nest pas
modifiable.
! Ces deux modes sont viter car ils sont facilement obsoltes,
soit suite des modifications dIHM, soit si ils tournent sur un
poste avec une rsolution diffrente. Toutes ces raisons peuvent
poser des problmes lors du re-jeu. 50
Window("Calculatrice").RunAnalog "Track1
-
4. Les points de contrle
Les points de contrle (checkpoints) permettent de garder en
mmoire les rsultats attendus par lapplication. Ils peuvent tre
insrs soit lenregistrement du script soit partir de lcran Active
Screen .
Il en existe plusieurs sortes sous QTP.
4.1 Standard CheckpointLe standard checkpoint est utilis pour
vrifier les proprits dun objet. Il permet galement denregistrer les
valeurs dun tableau se trouvant sur lapplication.
Sur les proprits dun objetAprs avoir slectionn ce type de
checkpoint, il faut cliquer sur lobjet que lon souhaite tester.
Automatisation 51
-
4.1 Standard Checkpoint (suit)
Automatisation 52
Point de contrle sur un objet
-
Lorsque lon souhaite vrifier les valeurs dun tableau, il faut
galement choisir le checkpoint standard . Aprs avoir slectionn le
tableau tester, lcran suivant souvre.
Automatisation53
4.1 Standard Checkpoint (suit)
Il est possible de slectionner seulement quelques valeurs du
tableau en cochant ou dcochant certaines cellules.
Point de contrle sur un tableau
-
4.2 Text CheckpointLes checkpoints text et text area permettent
de
contrler un texte ou un groupe de texte.
En plus de vrifier le texte slectionn, ces checkpoints peuvent
aussi tester les mots qui entourent celui-ci.
4.3 Bitmap Checkpoint Le Bitmap Checkpoint peut tre utile pour
vrifier des
graphiques. Il suffit de slectionner Bitmap Checkpoint et de
cliquer sur une partie de lapplication. Avec loption Check only
selected area, nous pouvons choisir uniquement une partie de
limage.
Automatisation 54
-
4.4 Database Checkpoint Pour effectuer une vrification sur la
base de donnes, il
faut slectionner Database Checkpoint .
Pour raliser une requte, il y a le choix entre lutilisation
manuelle ou laide de loutil graphique Microsoft Query. Cet outil
permet de slectionner les tables et les champs que lon souhaite
ajouter au checkpoint. Avec la mthode manuelle, il suffit de saisir
une requte SQL de slection.
Dans les deux cas, il faudra slectionner une source de donnes
ODBC vers la base de donnes de lapplication.
Les proprits de ce checkpoint ressemblent celles dun tableau. Il
est possible de cocher ou dcocher des cellules du tableau.
Automatisation 55
-
4.5 Accessibility CheckpointCe checkpoint permet de vrifier
quune page Web est conforme
aux rgles du W3C (World Wide Web Consortium). Ce consortium
international a pour but de promouvoir l'volutivit du Web et de
garantir son Interoprabilit.
Pour vrifier que la page Web est bien conforme, il faut
slectionner ce checkpoint, cliquer sur une page Web. Ensuite QTP
coche les lments qui peuvent tre vrifi sur la page.
4.6 XML CheckpointIl y a deux manires de vrifier un fichier XML,
soit en cliquant sur
un fichier XML dj ouvert, soit en envoyant le chemin du fichier
QTP.
Ensuite, QTP affiche les donnes du fichier. Il est possible de
slectionner les valeurs tester.
Automatisation 56
-
5. La synchronisation dobjets La synchronisation consiste
ajouter une tape dans un
script de test qui indique QTP dattendre lapparition dun objet
particulier avant de passer ltape suivante.
La synchronisation garantit la russite de la r excution car le
script diffre toute action jusqu ce que lapplication soit dans ltat
adquat pour poursuivre.
Certains objets ncessitent un temps de traitement plus long
:
- Une barre de progression doit atteindre 100% ;
- Un message de statut doit apparatre ;
- Un bouton doit tre activ ;
- Une fentre ou un message contextuel doit souvrir.
Automatisation 57
-
6. Gestion des donnesQTP propose plusieurs manires de grer les
donnes dans les
tests.
6.1 Table de donnesQTP intgre directement une table de donnes
interne ( DataTable
) matrialise sous la forme dune feuille de calcul type Excel .
Cest sur cette feuille quil est possible de stocker les donnes
utiliser dans les tests (donnes dentre et donnes de sortie).
Limportation et lexportation du fichier des donnes est possible
via loutil. Il est galement possible de renommer les colonnes pour
associer une suite de valeurs un champ saisir plusieurs fois.
Automatisation 58
-
Chaque ligne de donnes gnre une itration du script. Pour
paramtrer les itrations, il faut aller dans la partie Run du Test
Settings . Il est possible de slectionner le nombre de lignes
excuter.
Pour ajouter un paramtre dentre dans la DataTable , il faut
enregistrer le script de test puis slectionner une des valeurs et
cliquer sur ses options de configuration. Il suffit de slectionner
le paramtre DataTable et donner un nom la variable.
Voici le rsultat de lajout de ces paramtres dans le script QTP
:
59
-
6.2 Variables denvironnement
QTP peut aussi insrer dans le script une valeur provenant de la
liste de variables denvironnement.
Cette liste contient des variables avec un nom et une valeur.
Elle est accessible partir du test en interne ou exporte partir dun
fichier XML.
6.3 Variables alatoires
QTP peut gnrer des chiffres alatoires et les insrer en tant que
valeurs dun paramtre. Il est possible de choisir lintervalle de ce
chiffre et de produire un nouveau chiffre chaque appel du paramtre,
chaque itration ou chaque excution du test.
Automatisation 60
-
7. Scnario de repriseQTP dispose dun gestionnaire de scnarios de
reprises qui permet de:
1. Dtecter et grer lapparition dune boite de dialogue derreur
particulire ;
2. Mettre en uvre un scnario de reprise, si une erreur survient,
permettant de poursuivre lexcution du test ;
3. Crer un scnario de reprise laide de lassistant Recovery
Scenario Wizard .
La premire tape est de slectionner lvnement dclenchant
linterruption du test , suivant lvnement dclencheur slectionn, il
faut identifier la pop-up ou le type derreur,
Ensuite, il faut indiquer QTP comment se comporter aprs avoir
dcouvert lvnement dclencheur.
La dernire tape est de prciser QTP ce quil doit faire aprs avoir
surmonter lvnement dclencheur, en indiquant le mode de reprise
souhait. 61
-
8 Dbogage et excution du test8.1 Dboguer un scriptQTP dispose
dun module de dbogage de scripts.
Il est possible dajouter ou de supprimer des points darrt sur
une ligne du script. Un point darrt suspend lexcution du test
lorsque QTP latteint. Il est possible dexcuter le script ligne par
ligne et dafficher la valeur dune variable.
8.2 Excuter un scriptIl y a plusieurs paramtres prendre en
compte avant dexcuter
pour la premire fois un script QTP.
Il est possible de capturer les crans prsentant des erreurs ou
avertissements lors de lexcution ou denregistrer la vido des crans
prcdant les erreurs ou avertissements survenus lors de
lexcution.
Automatisation 62
-
8.2 Excuter un script en QTP (fin)
En fin dexcution du script, le fichier des rsultats daffiche. Ce
rapport dtaille lexcution du test et montre le rsultat des points
de contrles. Les erreurs sont facilement dtectables.
Sil y a une erreur dans un tableau de valeurs, les cellules
errones disposent dune croix rouge.
De plus le rsultat attendu est renseign.
Ce rapport peut tre imprim ou export en fichier HTML ou PDF.
Automatisation 63
-
Selenium outils pour tester des application web
Prsentation:
Selenium est un outil dautomatisation de tests fonctionnels
permettant dexcuter des scnarios dinteractions utilisateur avec une
application web. Il permet dune part de valider les fonctionnalits
de lapplication, et dautre part de tester sa compatibilit avec des
environnements client htrognes (browser et OS sur lequel est utilis
le browser).
Automatisation 64
-
Selenium regroupe plusieurs outils
Selenium Core : coeur de Selenium. Le core doit tre install sur
le serveur sur lequel tourne votre application pour pouvoir les
tester,
Selenium IDE : extension Firefox capable denregistrer et
dexcuter des tests et des Test Suites (via TestRunner, composant de
lIDE capable de jouer des Test Suite),
Selenium Remote Control : Serveur qui permet dexcuter des tests
sur diffrents navigateurs (firefox,
internet explorer, opera, etc) et diffrents systmes
dexploitation (MS Windows, GNU/Linux, Mac OS)
Serveur qui permet dexcuter des Test Suites sur ces diffrents
navigateurs,
Serveur qui permet dexcuter des tests crit dans des languages de
script comme Ruby, Python, Java, .Net et Perl.
Automatisation 65
-
66
-
Contrairement Selenium Core, Selenium RC et Selenium IDE
sinstallent sur le poste du dveloppeur.
Selenium RC peut aussi sinstaller sur un serveur ddi lexcution
des tests si lon souhaite les excuter de faon automatise.
67
Petit aperu dun test enregistr dans Selenium IDE :
-
Test enregistr dans Selenium IDE (fin)
Le test consiste : ouvrir la page Google.fr, Taper le mot cl
"clever age" Cliquer sur "Rechercher Cliquer sur le lien "Clever
Age, conseil en architecture technique" Sur le site de Clever Age,
vrifier la prsence du texte "systmes
informatiques flexibles").
Note: Selenium nest pas fait pour :
Tester des applications non-web : client lourd, service web,
etc. Faire des tests de performance.
68
-
Test Suite
Nous pouvons voir les Test Suites de deux faons :
Un ensemble de tests individuels que nous voulons jouer chaque
nouvelle version dun projet. Chaque test correspond un cas
dutilisation et permet de valider le bon fonctionnement de
lapplication dans son ensemble.
Un ensemble de composants qui seront utiliss pour construire un
test.. Ces composants pourront tre mutualiss entre les diffrents
tests.
Automatisation 69
-
Test Suite (2)
Exemple : le test dune application est souvent compos de trois
tapes : connexion lapplication, action mener puis dconnexion de
lapplication. Il faut crer trois tests :
Un test "connexion" : sa porte se limite aller sur lcran
dauthentification de lapplication, saisir les identifiants et se
connecter.
Un test "action" : le cur du test, il contient la fonctionnalit
tester dans notre scnario
Un test "dconnexion", consiste cliquer sur le lien "Dconnexion"
et vrifier que cela est bien le cas.
Automatisation 70
-
Comment sintgre Selenium dans un processus dintgration continue
?
Il "suffit" de sappuyer sur la capacit de Selenium exporter les
tests enregistrs dans Selenium IDE dans un des formats supports par
Selenium RC et adapt votre outil dintgration continue.
Une fois export et intgr votre outil, lors dun commit, une tche
est lance qui consiste :
Lancer une instance du serveur Selenium RC. Lancer votre test
qui se connectera linstance du Selenium RC
et jouera le test.
Rcuprer le fichier de log produit par Selenium RC. Traiter le
fichier de log.
Vous pourriez objecter quil est possible de lancer Selenium RC
avec un test au format HTML. Certes mais dans la mesure o vous
allez vouloir probablement rinitialiser votre application suite
votre test, vous serez contraint de passer par un langage de
script. 71
-
Conclusion
Automatisation 72