[PFE] Master en ingénierie du logiciel
-
Upload
usthb-deltalog -
Category
Technology
-
view
4.369 -
download
7
description
Transcript of [PFE] Master en ingénierie du logiciel
![Page 1: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/1.jpg)
1
Présenté Par:
Billel REDOUANE.
PLATEFORME DE TESTS LOGICIELS AUTOMATISÉS
Proposé et encadré par:
Mr Said BABACI
Mr Abdeslem MENACERE
Université des Sciences et de la Technologie Houari Boumedienne
![Page 2: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/2.jpg)
2
Plan
Introduction Contexte Problématique Objectifs Solution envisagée
Analyse Définitions (Rappels) Comparatif des outils de test Présentation sélénium
Conception Implémentation Conclusion Perspectives
![Page 3: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/3.jpg)
3
Introduction
Une entreprise algérienne, DELTALOG
SSII (Société de services en ingénierie informatique)
4 axes Recherche et développement (R&D) Gestion de la connaissance Conseils & infogérance Intégration & développement
![Page 4: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/4.jpg)
4
Contexte: R&D
Un de ses projets R&D : OWXE (Open WorkFlow Xml Engine)
Présentation Owxe: Définition:
Une plateforme de génération d’application de gestion, basée sur des Modèles Métiers (UML + OML)
Principe: Modélisation de processus, workflow, et données utilisées. « Parsing » et Génération du code (correspondant aux modèles)
exécutables sur la plateforme
Modèle: Diagramme de Use Case, de Classe, d’Activité OML, Description de l’IHM (des formulaires) et de leurs privilèges
d’accès.
![Page 5: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/5.jpg)
6
Exemple Modèle Owxe
L’OML du cas d’utilisation
![Page 6: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/6.jpg)
7
Formulaire généré par Owxe
![Page 7: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/7.jpg)
8
Problématique
Le développement selon l’approche Owxe, nécessite des retouches fréquentes sur les modèles.
Difficulté de contrôler la non-régression Besoin de repasser les tests fonctionnels (perte
de temps, tâches répétitives)
![Page 8: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/8.jpg)
9
Objectif
Développer une solution pour automatiser les tests fonctionnels (et de non-regression) sur les applications Owxe »
![Page 9: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/9.jpg)
10
Solution envisagée
Générateur de test
1
2
3
45
![Page 10: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/10.jpg)
11
Démarche projet
![Page 11: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/11.jpg)
12
Etapes
1. Etat de l’art du Test logiciel2. Etude et évaluation des outils de test3. Choix d’un outil (test runner)
s’intégrant à OWXE4. Conception d’un module de génération
de scripts de test (fonctionnel)5. Implémentation6. Tests et Validation
![Page 12: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/12.jpg)
13
Définitions
![Page 13: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/13.jpg)
14
Définitions
Définition du test Le test (manuel ou automatique) vise à
établir la conformité avec sa spécification.
Le test détecte des différences entre les résultats engendrés par le système et ceux qui sont attendus par la spécification.
![Page 14: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/14.jpg)
15
Définitions
Pourquoi tester
Le test n’a pas pour objectif: De diagnostiquer la cause des erreurs. De corriger les fautes. De prouver la correction d’un programme.
Pour détecter des erreurs et des anomalies.
![Page 15: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/15.jpg)
16
Définitions
Pourquoi automatiserPour un gain de temps et d’argent..
Exemple: (Modèle Based testing) test basé sur les modèles
Une application à tester Plus de 100 cas de tests Partie authentification se trouve dans tout les cas de tests.
En cas de mise à jour de l’application à tester on doit refaire les tests :
A la main / Régénérer les tests (à partir de modèle)
![Page 16: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/16.jpg)
17
Comparatif des outils de tests
![Page 17: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/17.jpg)
18
Comparatif des outils de tests
CubicTest
DejaClick
Selenium
SeleniumEtude
comparative
Tellurium&TrUMP
iMacros
![Page 18: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/18.jpg)
19
![Page 19: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/19.jpg)
20
Présentation Selenium
Permet d’enregistrer et de rejouer les tests d’application web
N’est pas paramétrable
On doit faire le test au moins une fois pour l’enregistrement
Si une mise à jour dans l’application, on doit refaire les tests
Est une extension Firefox pour des tests d’applications web :
Permet d’afficher des rapports de tests
![Page 20: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/20.jpg)
22
Conception
![Page 21: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/21.jpg)
23
Service de developpement
1
23
4
5
6
7
Data
Schéma global du déroulement de la solution
Générateur de test
![Page 22: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/22.jpg)
24
Conception
Vue globale de l’architecture du générateur de test
![Page 23: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/23.jpg)
25
Conception
X M IFichier
de Script de test
Parseurs
Diagrammes de Use
Case + OML
<details xmi:id=" value=" OML "/>
Nom Cas d’utilisatio
n
Description de l’IHM + Privilège des opérations
<packagedElement xmi:type=" name=" >
Conception du parseur
![Page 24: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/24.jpg)
26
Conception
![Page 25: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/25.jpg)
27
Conception: Extracteur
Service de developpement
12
3
![Page 26: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/26.jpg)
28
Conception
![Page 27: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/27.jpg)
29
Service de developpement
1 2
3
Conception : Analyseur
![Page 28: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/28.jpg)
30
Conception
![Page 29: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/29.jpg)
31
Service de developpement
1
Conception: Générateur
![Page 30: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/30.jpg)
32
Implémentation
![Page 31: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/31.jpg)
33
Implémentation
Zend Studio for Eclipse 6.0.0 Professional Edition
XAMPP 1.7.3 Apache 2.2.14 PHP Version 5.3.1
Les API utilisées : DOM, Zip, PCRE Debugger : Xdebug2.1
![Page 32: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/32.jpg)
34
Vue sur le diagramme de Use Case + l’OML utilisés à l’importation sur Owxe et sur notre
solution
L’OML du cas d’utilisation
![Page 33: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/33.jpg)
35
Implémentation
vue globale du générateur des tests.
Importation des Modèles
![Page 34: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/34.jpg)
36
Implémentation
Ouvrir un fichier *.uml contenant le format XMI
![Page 35: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/35.jpg)
37
Implémentation
vue sur les fichiers de cas de test généré et le plan de test prêt à être exécuté sur Selenium
![Page 36: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/36.jpg)
38
Implémentation
Les tests générés en cours d’exécution
![Page 37: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/37.jpg)
39
Conclusion
![Page 38: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/38.jpg)
40
Conclusion
• Ce projet a consisté en la mise en œuvre d’un outil qui permet de générer des cas nominaux de tests fonctionnels.
• Les cas de tests générés sont sous forme de scripts exécutable sur une plateforme tiers que nous avons choisi (sélénium/ firefox)
• Ce travail permet entre autre: de détecter les erreurs et les anomalies le plus
tôt possible de vérifier la conformité avec la spécification
![Page 39: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/39.jpg)
41
Perspectives 1/2
Prise en charge d’autres diagrammes OWXE Ajouter le paramétrage des scénarios de tests Prise en charge d’un diagramme d’état transition pour générer des cas de tests pour toutes les applications pour être une plateforme complète de tests
![Page 40: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/40.jpg)
42
Perspectives 2/2
Ajouter la possibilité de générer des scénarios de tests avec une couverture maximale, en utilisant des heuristiques par exemple (fréquence, risque, importance,…).
Intégrer notre générateur de test à des outils de génération de données significatives (comme: DTM, E_NAXOS,…)
Exploiter les résultats du test comme une mesure de la qualité logicielle.
![Page 41: [PFE] Master en ingénierie du logiciel](https://reader035.fdocuments.net/reader035/viewer/2022081413/547fb19fb4af9f90278b485b/html5/thumbnails/41.jpg)
43
Fin
Merci