SlideShare una empresa de Scribd logo
1 de 41
Descargar para leer sin conexión
Automatisation des Tests avec Squash TA
en environnement bancaire : retour
d’expérience de la BGPI
Club Qualité Logicielle
12 juin 2012
/13 juin 2012/P2
Sommaire
 Contexte
 Plate-forme technique
 Méthodologie
 Points de vigilance
 Questions & Réponses
/13 juin 2012/P3
Présentation BGPI/SIDEV/HDF
 HDF : Help Desk Fonctionnel
Support fonctionnel
Modélisation Pivot Rédaction des Spécifications fonctionnelles
détaillées
Recette Assurance Qualité et Tests de Non Régression
 SIDEV : Études Informatiques BGPI
 BGPI : Banque de Gestion Privée du groupe Crédit Agricole
/13 juin 2012/P4
Contexte
 Gains attendus des TNR
 Régressions Incidents Mises en production
 Recette plus complète : Risque d’anomalie Couverture
 Objectifs
 Vérifier l'absence de régression dans une nouvelle version
 Recette effectuée dans un environnement dédié et maîtrisé
 Sélection de scénarios métier pertinents et automatisables
 Recette complémentaire de celle de la MOA (évolutions)
/13 juin 2012/P5
Périmètre applicatif testé
 Alpha (28 scénarios – juin 2010 – 6 mois)
- application de téléconseil avec recommandations d'arbitrage
- nombre important de régressions
- technologie : JSF + QuipuKit, navigateur Firefox 3.2.6 local
- outil de test utilisé : Squash TA/Selenium/CubicTest
 Agora CRM (5 scénarios – janvier 2011 – 1 mois)
- création de contacts clients (CRM)
- forte sensibilité
- technologie : GWT/GXT, navigateur IE8 sous Citrix
- outil de test utilisé : Squash TA/Selenium/CubicTest
 Agora NRT (21 scénarios – janvier 2012 – 1 mois)
- application d'administration du nouveau référentiel tiers
- structurant car référentiel
- technologie : idem qu’Agora CRM
- outil de test utilisé : Squash TA/Sahi
/13 juin 2012/P6
Les différents contributeurs
 Mise en place de la plate-forme de tests automatisés :
 Equipe Production
 Equipe Base de données
 Equipe Intégration
 Equipe Squash Henix
 Réalisation des tests :
 Développeurs Web
 Maîtrises d’Ouvrage
 Automaticien
/13 juin 2012/P7
Architecture technique
Squash
TM
Mantis
Serveur
ORACLE
‘TNR’
XFER
Serveur
ORACLE
‘TNR’
NR2
Serveur applicatif
Webspheres
- Alpha
- Agora
- Services
communs
Squash TM
Apache
MySQL
PHP
JAILER
MAVEN
IE Firefox
Poste HDF
Rapports
d’exécution
Usine TNR
WebApp
Automatisation
Selenium
Eclipse
Cubic Test
Subversive
Applicatif BGPI
Sahi JAILER
MAVEN
IE Firefox
Poste HDF
Subversion
Sahi
Eclipse
Squash TA
/13 juin 2012/P8
Méthodologie générale – Etapes générales
du processus d’automatisation
 Analyse des spécifications fonctionnelles
 Choix des scénarios à automatiser
 Alimentation du référentiel de tests (exigences, cas de test)
 Détermination de l'échantillon de données ad'hoc
 Codage des scénarios
 Exécution des scripts
 Génération de rapports d’exécution
 Analyse des résultats et restitution du PV de recette TNR
Squash TA / Sahi
/13 juin 2012/P9
Méthodologie générale – Etapes générales
du processus d’automatisation
 Analyse des spécifications fonctionnelles
 Choix des scénarios à automatiser
 Alimentation du référentiel de tests (exigences, cas de test)
 Détermination de l'échantillon de données ad'hoc
 Codage des scénarios
 Exécution des scripts
 Génération de rapports d’exécution
 Analyse des résultats et restitution du PV de recette TNR
/13 juin 2012/P10
AGORA NRT – Aperçu d’un écran
/13 juin 2012/P11
Vue 3D de l’application Agora NRT
Vue créée par l’extension Firefox Web Developer
/13 juin 2012/P12
Sahi – Présentation générale
 Outil open source d’automatisation de tests pour
applications Web
 Lance et ferme le navigateur Web
 Interprète et exécute les commandes transmises par le
programme de test
 Agit comme un proxy HTTP, en interceptant et vérifiant les
messages HTTP échangés entre le navigateur et l’application
testée
 Librairies client fournissant une interface (API) entre le
langage de programmation et le serveur proxy
 Enregistreur de commandes fourni
/13 juin 2012/P13
Sahi : Les points forts
+ API très riche (+ d’une centaine de méthodes d’accès / action /
assertion)
+ support de nombreux langages de programmation
+ prise en main rapide
+ enregistreur intégré
+ indépendance vis à vis des différents interpréteurs Javascript
+ enregistreur fonctionnant sous tous les navigateurs
+ accès facilité aux objets d'une page Web
+ adapté aux applications Web riches avec contenu dynamique
+ « waits » implicites
/13 juin 2012/P14
Sahi : Les points faibles
- pas de couche graphique, écriture entièrement manuelle des
scripts
- technologie encore récente, qui doit faire ses preuves
- impossible d'interagir avec l’environnement win32
/13 juin 2012/P15
Méthodologie générale – Etapes générales
du processus d’automatisation
 Analyse des spécifications fonctionnelles
 Choix des scénarios à automatiser
 Alimentation du référentiel de tests (exigences, cas de test)
 Détermination de l'échantillon de données ad'hoc
 Codage des scénarios
 Exécution des scripts
 Génération de rapports d’exécution
 Analyse des résultats et restitution du PV de recette TNR
/13 juin 2012/P16
Etapes d’une campagne de tests
automatisés
/13 juin 2012/P17
Intégration et Recette de scripts (Java)
 Intégration des scripts dans des classes Java
 Mise en place de l’environnement
 Exécution du script
 Vérifications éventuelles (base, fichiers,…)
 Réinitialisation de l’environnement
/13 juin 2012/P18
Framework Squash TA
 La plupart des outils d’automatisation de test existants se focalisent sur
l’exécution du test et les vérifications dynamiques (c’est-à-dire les vérifications
effectuées au cours de l’exécution). Mais ces fonctions seules ne permettent pas de
mettre en place des tests réutilisables et maintenables.
 Les cas de tests doivent être entièrement automatisés, c’est-à-dire qu’ils doivent
inclure toutes les étapes suivantes :
 préparation de l’environnement
 exécution du test et vérifications dynamiques
 vérifications post-exécution
 nettoyage de l’environnement
 Le framework doit prendre en charge la préparation de l’environnement avant le cas
de test, les vérifications complémentaires après l’exécution, et le nettoyage de
l’environnement.
 En outre, il doit permettre de constituer des campagnes facilement et de les
exécuter automatiquement.
/13 juin 2012/P19
Points de vigilance
 Sensibilité des tests aux modifications de :
 spécifications fonctionnelles
 framework de développement
 l’interface utilisateur
 structure de la base de données
 données (ex: anonymisation)
Chacun de ces points impacte plus ou moins fortement l’effort de
maintenance des tests
/13 juin 2012/P20
Conclusions
 Squash TA assure un pilotage complet des tests,
de la préparation au reporting
 Gain de productivité et donc de couverture
fonctionnelle : sur Agora NRT, 100% des
scénarios de consultation ont été automatisés
 Fiabilisation de la recette : 2 anomalies détectées
par campagne en moyenne
/13 juin 2012/P21
Annexes
/13 juin 2012/P22
Contribution du service Production
 Installation et configuration du poste de travail selon le besoin
exprimé
 Droits d’installation sur certains répertoires du poste de travail
 Montage des serveurs applicatifs
 Montage des bases de données
/13 juin 2012/P23
Contribution de l’équipe Base de données
 Mise à disposition de données iso-prod contenant un repository
de données multiples, dans lesquelles peut « piocher »
l'automaticien
 Mise à disposition d'un ensemble de scripts shell permettant le
déploiement des packages à mettre en production
 Création de comptes Jailer
/13 juin 2012/P24
Contribution de l’équipe Intégration
 Déploiement et maintenance de l’environnement Squash TM et
Mantis
/13 juin 2012/P25
Contribution de l’équipe Squash Henix
 Déploiement, configuration et maintenance de Squash TA sur le
poste de travail
 Adaptation du template projet aux applications du client
 Développement d’extensions du framework spécifiques à
l’environnement applicatif du client
/13 juin 2012/P26
Contribution des Développeurs Web
 Déploiement des versions à tester (deployIt)
 Développement d’un lanceur de batchs
 Mise en place d'un serveur de mails
 Développement d'une page Web pour afficher le contenu d'un
email ou d'un document pdf avant son formatage final, au format
HTML, exploitable par l'outil de test
 Renseignement de la matrice multi-critères (choix des scénarios
à automatiser)
/13 juin 2012/P27
Contribution des Maîtrises d’Ouvrage
 Mise à disposition des spécifications fonctionnelles générales
 Saisie des règles de gestion et des cas de test dans le référentiel
de tests
 Renseignement de la matrice multi-critères et choix final des
scénarios à automatiser
/13 juin 2012/P28
Contribution de l’automaticien
 Renseignement de la matrice multi-critères
 Maintenance de l’environnement de test et de la toolbox
 Constitution des jeux de données de test
 Ecriture et maintenance des scripts
 Exécution des TNR automatisés
/13 juin 2012/P29
Choix des scenarios à automatiser :
utilisation d’une matrice multicritères
/13 juin 2012/P30
Matrice : Grille de sélection instanciée
/13 juin 2012/P31
Méthodologie générale – Etapes générales
du processus d’automatisation
 Analyse des spécifications fonctionnelles
 Choix des scénarios à automatiser
 Alimentation du référentiel de tests (exigences, cas de test)
 Détermination de l'échantillon de données ad'hoc
 Codage des scénarios
 Exécution des scripts
 Génération de rapports d’exécution
 Analyse des résultats et restitution du PV de recette TNR
/13 juin 2012/P32
Référentiel de tests – Squash TM
/13 juin 2012/P33
Méthodologie générale – Etapes générales
du processus d’automatisation
 Analyse des spécifications fonctionnelles
 Choix des scénarios à automatiser
 Alimentation du référentiel de tests (exigences, cas de test)
 Détermination de l'échantillon de données ad'hoc
 Codage des scénarios
 Exécution des scripts
 Génération de rapports d’exécution
 Analyse des résultats et restitution du PV de recette TNR
/13 juin 2012/P34
Jailer : Description
 Outil open-source codé en Java
 Support de multiples bases (via JDBC)
 Analyse de base de données relationnelles
 Création d’un modèle d’extraction respectueux des
contraintes de base de données
 Génération d’échantillons de données
 Exports de datasets au format DbUnit
/13 juin 2012/P35
Jailer : Extraction de données
BGPI3TMP BGPI3NR2
REF
Données
fonctionnelles
Données
fonctionnelles
REF
/13 juin 2012/P36
Jailer : Modèle d’extraction
/13 juin 2012/P37
Jailer : Processus d’extraction
/13 juin 2012/P38
Jailer : Exemple de dataset
/13 juin 2012/P39
Contrôleur Sahi – Record & Playback
/13 juin 2012/P40
Processus Subversion / Maven d’exécution
d’une campagne de tests
/13 juin 2012/P41
Sahi – Diagramme d’architecture

Más contenido relacionado

La actualidad más candente

Architectures microservices
Architectures microservicesArchitectures microservices
Architectures microservicesRiadh MNASRI
 
Alphorm.com Formation Splunk : Maitriser les fondamentaux
Alphorm.com Formation Splunk : Maitriser les fondamentauxAlphorm.com Formation Splunk : Maitriser les fondamentaux
Alphorm.com Formation Splunk : Maitriser les fondamentauxAlphorm
 
Projet de fin d'etude sur le parc informatique
Projet  de fin d'etude sur le parc informatiqueProjet  de fin d'etude sur le parc informatique
Projet de fin d'etude sur le parc informatiqueHicham Ben
 
Mise en place d'une infrastructure basée sur OpenStack
Mise en place d'une infrastructure basée sur OpenStack Mise en place d'une infrastructure basée sur OpenStack
Mise en place d'une infrastructure basée sur OpenStack Ahmed Slim
 
Rapport PFE ingénieur réseaux marwen SAADAOUI ( Juin 2018 )
Rapport PFE ingénieur réseaux marwen SAADAOUI ( Juin 2018 )Rapport PFE ingénieur réseaux marwen SAADAOUI ( Juin 2018 )
Rapport PFE ingénieur réseaux marwen SAADAOUI ( Juin 2018 )Saadaoui Marwen
 
Etude et mise en place d'une solution d'administration et de supervision Open...
Etude et mise en place d'une solution d'administration et de supervision Open...Etude et mise en place d'une solution d'administration et de supervision Open...
Etude et mise en place d'une solution d'administration et de supervision Open...Chiheb Ouaghlani
 
Pfe conception et développement d'une application web GMAO JEE
Pfe conception et développement d'une application web GMAO JEEPfe conception et développement d'une application web GMAO JEE
Pfe conception et développement d'une application web GMAO JEEOussama Djerba
 
Chp5 - Les outils CASE
Chp5 - Les outils CASEChp5 - Les outils CASE
Chp5 - Les outils CASELilia Sfaxi
 
Présentation PFE: Système de gestion des réclamations et interventions clients
Présentation PFE: Système de gestion des réclamations et interventions clientsPrésentation PFE: Système de gestion des réclamations et interventions clients
Présentation PFE: Système de gestion des réclamations et interventions clientsMohamed Ayoub OUERTATANI
 
Cahier des Charges Infrastructure Informatique
Cahier des Charges Infrastructure InformatiqueCahier des Charges Infrastructure Informatique
Cahier des Charges Infrastructure InformatiqueDATANYWARE.com
 
Mise en place d'une Plateforme de Supervision et de Détection d'Intrusion Sys...
Mise en place d'une Plateforme de Supervision et de Détection d'Intrusion Sys...Mise en place d'une Plateforme de Supervision et de Détection d'Intrusion Sys...
Mise en place d'une Plateforme de Supervision et de Détection d'Intrusion Sys...Alaaeddine Tlich
 
Presentation DevOps : enjeux , objectifs, consequences
Presentation DevOps : enjeux , objectifs, consequencesPresentation DevOps : enjeux , objectifs, consequences
Presentation DevOps : enjeux , objectifs, consequencesStéphane Di Cioccio
 
Rapport pfe talan_2018_donia_hammami
Rapport pfe talan_2018_donia_hammamiRapport pfe talan_2018_donia_hammami
Rapport pfe talan_2018_donia_hammamiDonia Hammami
 
Rapport projet fin d'étude
Rapport projet fin d'étudeRapport projet fin d'étude
Rapport projet fin d'étudeHibaFarhat3
 
2015 07 14_presentation-pfe-gestion-parc-informatique
2015 07 14_presentation-pfe-gestion-parc-informatique2015 07 14_presentation-pfe-gestion-parc-informatique
2015 07 14_presentation-pfe-gestion-parc-informatiqueUsmiste Rosso
 
Rapport de stage développement informatique
Rapport de stage développement informatique Rapport de stage développement informatique
Rapport de stage développement informatique MehdiOuqas
 
PFE :: Application de gestion des dus d'enseignement
PFE :: Application de gestion des dus d'enseignementPFE :: Application de gestion des dus d'enseignement
PFE :: Application de gestion des dus d'enseignementNassim Bahri
 
Presentation Zabbix en Français du 6 Juin 2013
Presentation Zabbix en Français du 6 Juin 2013Presentation Zabbix en Français du 6 Juin 2013
Presentation Zabbix en Français du 6 Juin 2013Alain Ganuchaud
 

La actualidad más candente (20)

Architectures microservices
Architectures microservicesArchitectures microservices
Architectures microservices
 
Alphorm.com Formation Splunk : Maitriser les fondamentaux
Alphorm.com Formation Splunk : Maitriser les fondamentauxAlphorm.com Formation Splunk : Maitriser les fondamentaux
Alphorm.com Formation Splunk : Maitriser les fondamentaux
 
Projet de fin d'etude sur le parc informatique
Projet  de fin d'etude sur le parc informatiqueProjet  de fin d'etude sur le parc informatique
Projet de fin d'etude sur le parc informatique
 
Mise en place d'une infrastructure basée sur OpenStack
Mise en place d'une infrastructure basée sur OpenStack Mise en place d'une infrastructure basée sur OpenStack
Mise en place d'une infrastructure basée sur OpenStack
 
Rapport PFE ingénieur réseaux marwen SAADAOUI ( Juin 2018 )
Rapport PFE ingénieur réseaux marwen SAADAOUI ( Juin 2018 )Rapport PFE ingénieur réseaux marwen SAADAOUI ( Juin 2018 )
Rapport PFE ingénieur réseaux marwen SAADAOUI ( Juin 2018 )
 
Etude et mise en place d'une solution d'administration et de supervision Open...
Etude et mise en place d'une solution d'administration et de supervision Open...Etude et mise en place d'une solution d'administration et de supervision Open...
Etude et mise en place d'une solution d'administration et de supervision Open...
 
Rapport PFE
Rapport PFERapport PFE
Rapport PFE
 
Pfe conception et développement d'une application web GMAO JEE
Pfe conception et développement d'une application web GMAO JEEPfe conception et développement d'une application web GMAO JEE
Pfe conception et développement d'une application web GMAO JEE
 
Chp5 - Les outils CASE
Chp5 - Les outils CASEChp5 - Les outils CASE
Chp5 - Les outils CASE
 
Présentation PFE: Système de gestion des réclamations et interventions clients
Présentation PFE: Système de gestion des réclamations et interventions clientsPrésentation PFE: Système de gestion des réclamations et interventions clients
Présentation PFE: Système de gestion des réclamations et interventions clients
 
Cahier des Charges Infrastructure Informatique
Cahier des Charges Infrastructure InformatiqueCahier des Charges Infrastructure Informatique
Cahier des Charges Infrastructure Informatique
 
Mise en place d'une Plateforme de Supervision et de Détection d'Intrusion Sys...
Mise en place d'une Plateforme de Supervision et de Détection d'Intrusion Sys...Mise en place d'une Plateforme de Supervision et de Détection d'Intrusion Sys...
Mise en place d'une Plateforme de Supervision et de Détection d'Intrusion Sys...
 
Presentation DevOps : enjeux , objectifs, consequences
Presentation DevOps : enjeux , objectifs, consequencesPresentation DevOps : enjeux , objectifs, consequences
Presentation DevOps : enjeux , objectifs, consequences
 
Rapport pfe talan_2018_donia_hammami
Rapport pfe talan_2018_donia_hammamiRapport pfe talan_2018_donia_hammami
Rapport pfe talan_2018_donia_hammami
 
Rapport projet fin d'étude
Rapport projet fin d'étudeRapport projet fin d'étude
Rapport projet fin d'étude
 
2015 07 14_presentation-pfe-gestion-parc-informatique
2015 07 14_presentation-pfe-gestion-parc-informatique2015 07 14_presentation-pfe-gestion-parc-informatique
2015 07 14_presentation-pfe-gestion-parc-informatique
 
Rapport de stage développement informatique
Rapport de stage développement informatique Rapport de stage développement informatique
Rapport de stage développement informatique
 
Rapport pfe
Rapport pfeRapport pfe
Rapport pfe
 
PFE :: Application de gestion des dus d'enseignement
PFE :: Application de gestion des dus d'enseignementPFE :: Application de gestion des dus d'enseignement
PFE :: Application de gestion des dus d'enseignement
 
Presentation Zabbix en Français du 6 Juin 2013
Presentation Zabbix en Français du 6 Juin 2013Presentation Zabbix en Français du 6 Juin 2013
Presentation Zabbix en Français du 6 Juin 2013
 

Similar a 20120612 02 - Automatisation des tests avec squash TA en environnement bancaire - Rex BGPI

Industrialisez vos projets Php
Industrialisez vos projets Php Industrialisez vos projets Php
Industrialisez vos projets Php ALTER WAY
 
"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014
"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014
"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014Benoît de CHATEAUVIEUX
 
20070320 04 - Plateforme d'integration continue (PSA)
20070320 04 - Plateforme d'integration continue (PSA)20070320 04 - Plateforme d'integration continue (PSA)
20070320 04 - Plateforme d'integration continue (PSA)LeClubQualiteLogicielle
 
Utc apm human talks compiegne
Utc apm human talks compiegneUtc apm human talks compiegne
Utc apm human talks compiegneArthur Van Ceulen
 
2010.11.26 - DSI - Les Applications SaaS Cloud au service des DSI - Forum Saa...
2010.11.26 - DSI - Les Applications SaaS Cloud au service des DSI - Forum Saa...2010.11.26 - DSI - Les Applications SaaS Cloud au service des DSI - Forum Saa...
2010.11.26 - DSI - Les Applications SaaS Cloud au service des DSI - Forum Saa...Club Alliances
 
Valtech - Décollage d’une plateforme digitale vers le Cloud Azure
Valtech - Décollage d’une plateforme digitale vers le Cloud AzureValtech - Décollage d’une plateforme digitale vers le Cloud Azure
Valtech - Décollage d’une plateforme digitale vers le Cloud AzureValtech
 
Les tests fonctionnels avec Visual Studio 2010
Les tests fonctionnels avec Visual Studio 2010Les tests fonctionnels avec Visual Studio 2010
Les tests fonctionnels avec Visual Studio 2010Microsoft
 
Java dans Windows Azure: l'exemple de Jonas
Java dans Windows Azure: l'exemple de JonasJava dans Windows Azure: l'exemple de Jonas
Java dans Windows Azure: l'exemple de JonasMicrosoft
 
Agenda formation OpenIdm
Agenda formation OpenIdmAgenda formation OpenIdm
Agenda formation OpenIdmPascal Flamand
 
Tra optimiser preparation_tests_v1
Tra optimiser preparation_tests_v1Tra optimiser preparation_tests_v1
Tra optimiser preparation_tests_v1SQLI
 
Retours d’expérience sur la conduite de projets BI sur les technologies...
Retours d’expérience sur la conduite de projets BI sur les technologies...Retours d’expérience sur la conduite de projets BI sur les technologies...
Retours d’expérience sur la conduite de projets BI sur les technologies...Guillaume Meyer
 
Presentation tests d'acceptations automatisés sug v1.1
Presentation tests d'acceptations automatisés sug v1.1Presentation tests d'acceptations automatisés sug v1.1
Presentation tests d'acceptations automatisés sug v1.1Jean-Emmanuel Houdu
 
SQLSaturday Paris 2014 - Et hop, ma base migre dans Azure
SQLSaturday Paris 2014 - Et hop, ma base migre dans AzureSQLSaturday Paris 2014 - Et hop, ma base migre dans Azure
SQLSaturday Paris 2014 - Et hop, ma base migre dans AzureGUSS
 
Master_OSAE_Cours_Tests_Grolleau.pdf
Master_OSAE_Cours_Tests_Grolleau.pdfMaster_OSAE_Cours_Tests_Grolleau.pdf
Master_OSAE_Cours_Tests_Grolleau.pdfBchiriAmina1
 
2008-10-02 Paris - Administration des applications critiques avec SQL Server ...
2008-10-02 Paris - Administration des applications critiques avec SQL Server ...2008-10-02 Paris - Administration des applications critiques avec SQL Server ...
2008-10-02 Paris - Administration des applications critiques avec SQL Server ...Patrick Guimonet
 

Similar a 20120612 02 - Automatisation des tests avec squash TA en environnement bancaire - Rex BGPI (20)

Openerp
OpenerpOpenerp
Openerp
 
Migration sharepoint 2013
Migration sharepoint 2013Migration sharepoint 2013
Migration sharepoint 2013
 
Industrialisez vos projets Php
Industrialisez vos projets Php Industrialisez vos projets Php
Industrialisez vos projets Php
 
CV_FR_Profil_Jean-Paul_NTUMBAKANYINDA
CV_FR_Profil_Jean-Paul_NTUMBAKANYINDACV_FR_Profil_Jean-Paul_NTUMBAKANYINDA
CV_FR_Profil_Jean-Paul_NTUMBAKANYINDA
 
"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014
"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014
"La Performance en Continue" à JMaghreb 3.0 - 05/11/2014
 
20070320 04 - Plateforme d'integration continue (PSA)
20070320 04 - Plateforme d'integration continue (PSA)20070320 04 - Plateforme d'integration continue (PSA)
20070320 04 - Plateforme d'integration continue (PSA)
 
Utc apm human talks compiegne
Utc apm human talks compiegneUtc apm human talks compiegne
Utc apm human talks compiegne
 
2010.11.26 - DSI - Les Applications SaaS Cloud au service des DSI - Forum Saa...
2010.11.26 - DSI - Les Applications SaaS Cloud au service des DSI - Forum Saa...2010.11.26 - DSI - Les Applications SaaS Cloud au service des DSI - Forum Saa...
2010.11.26 - DSI - Les Applications SaaS Cloud au service des DSI - Forum Saa...
 
Valtech - Décollage d’une plateforme digitale vers le Cloud Azure
Valtech - Décollage d’une plateforme digitale vers le Cloud AzureValtech - Décollage d’une plateforme digitale vers le Cloud Azure
Valtech - Décollage d’une plateforme digitale vers le Cloud Azure
 
Les tests fonctionnels avec Visual Studio 2010
Les tests fonctionnels avec Visual Studio 2010Les tests fonctionnels avec Visual Studio 2010
Les tests fonctionnels avec Visual Studio 2010
 
Java dans Windows Azure: l'exemple de Jonas
Java dans Windows Azure: l'exemple de JonasJava dans Windows Azure: l'exemple de Jonas
Java dans Windows Azure: l'exemple de Jonas
 
Agenda formation OpenIdm
Agenda formation OpenIdmAgenda formation OpenIdm
Agenda formation OpenIdm
 
Tra optimiser preparation_tests_v1
Tra optimiser preparation_tests_v1Tra optimiser preparation_tests_v1
Tra optimiser preparation_tests_v1
 
Retours d’expérience sur la conduite de projets BI sur les technologies...
Retours d’expérience sur la conduite de projets BI sur les technologies...Retours d’expérience sur la conduite de projets BI sur les technologies...
Retours d’expérience sur la conduite de projets BI sur les technologies...
 
Projet Domurpic
Projet DomurpicProjet Domurpic
Projet Domurpic
 
Presentation tests d'acceptations automatisés sug v1.1
Presentation tests d'acceptations automatisés sug v1.1Presentation tests d'acceptations automatisés sug v1.1
Presentation tests d'acceptations automatisés sug v1.1
 
Mobilité && SAP
Mobilité && SAPMobilité && SAP
Mobilité && SAP
 
SQLSaturday Paris 2014 - Et hop, ma base migre dans Azure
SQLSaturday Paris 2014 - Et hop, ma base migre dans AzureSQLSaturday Paris 2014 - Et hop, ma base migre dans Azure
SQLSaturday Paris 2014 - Et hop, ma base migre dans Azure
 
Master_OSAE_Cours_Tests_Grolleau.pdf
Master_OSAE_Cours_Tests_Grolleau.pdfMaster_OSAE_Cours_Tests_Grolleau.pdf
Master_OSAE_Cours_Tests_Grolleau.pdf
 
2008-10-02 Paris - Administration des applications critiques avec SQL Server ...
2008-10-02 Paris - Administration des applications critiques avec SQL Server ...2008-10-02 Paris - Administration des applications critiques avec SQL Server ...
2008-10-02 Paris - Administration des applications critiques avec SQL Server ...
 

Más de LeClubQualiteLogicielle

20171122 03 - Les tests de performance en environnement DevOps
20171122 03 - Les tests de performance en environnement DevOps20171122 03 - Les tests de performance en environnement DevOps
20171122 03 - Les tests de performance en environnement DevOpsLeClubQualiteLogicielle
 
20171122 04 - Automatisation - formation et certifications
20171122 04 - Automatisation - formation et certifications20171122 04 - Automatisation - formation et certifications
20171122 04 - Automatisation - formation et certificationsLeClubQualiteLogicielle
 
20171122 01 - REX : Intégration et déploiement continu chez Engie
20171122 01 - REX : Intégration et déploiement continu chez Engie20171122 01 - REX : Intégration et déploiement continu chez Engie
20171122 01 - REX : Intégration et déploiement continu chez EngieLeClubQualiteLogicielle
 
20171122 02 - Engage developers to use better coding practices
20171122 02 - Engage developers to use better coding practices20171122 02 - Engage developers to use better coding practices
20171122 02 - Engage developers to use better coding practicesLeClubQualiteLogicielle
 
20171122 - Accueil Club Qualité Logicielle
20171122 - Accueil Club Qualité Logicielle 20171122 - Accueil Club Qualité Logicielle
20171122 - Accueil Club Qualité Logicielle LeClubQualiteLogicielle
 
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...LeClubQualiteLogicielle
 
20151013 - Agirc arrco : Behavior driven development
20151013 - Agirc arrco : Behavior driven development20151013 - Agirc arrco : Behavior driven development
20151013 - Agirc arrco : Behavior driven developmentLeClubQualiteLogicielle
 
20151013 - Réduire les coûts des tests de performance ?
20151013 - Réduire les coûts des tests de performance ?20151013 - Réduire les coûts des tests de performance ?
20151013 - Réduire les coûts des tests de performance ?LeClubQualiteLogicielle
 
20151013 - Accueil Club Qualité Logicielle
20151013 - Accueil Club Qualité Logicielle 20151013 - Accueil Club Qualité Logicielle
20151013 - Accueil Club Qualité Logicielle LeClubQualiteLogicielle
 
20151013 - DevOps et qualification continue
20151013 - DevOps et qualification continue20151013 - DevOps et qualification continue
20151013 - DevOps et qualification continueLeClubQualiteLogicielle
 
20140410 - Cartographie applicative multi-technologies et analyse d'impact
20140410 - Cartographie applicative multi-technologies et analyse d'impact20140410 - Cartographie applicative multi-technologies et analyse d'impact
20140410 - Cartographie applicative multi-technologies et analyse d'impactLeClubQualiteLogicielle
 
20140410 - Implémentation de squash TM-TA - Architecture et méthodologie
20140410 - Implémentation de squash TM-TA - Architecture et méthodologie20140410 - Implémentation de squash TM-TA - Architecture et méthodologie
20140410 - Implémentation de squash TM-TA - Architecture et méthodologieLeClubQualiteLogicielle
 
20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...
20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...
20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...LeClubQualiteLogicielle
 
20140410 - Choisir et implanter un outil de test
20140410 - Choisir et implanter un outil de test20140410 - Choisir et implanter un outil de test
20140410 - Choisir et implanter un outil de testLeClubQualiteLogicielle
 
20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...
20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...
20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...LeClubQualiteLogicielle
 
20130113 06 - Travaux de recherche sur la corrélation entre qualité du code e...
20130113 06 - Travaux de recherche sur la corrélation entre qualité du code e...20130113 06 - Travaux de recherche sur la corrélation entre qualité du code e...
20130113 06 - Travaux de recherche sur la corrélation entre qualité du code e...LeClubQualiteLogicielle
 
20130113 05 - Inspection continue et roadmap 2013
20130113 05 - Inspection continue et roadmap 201320130113 05 - Inspection continue et roadmap 2013
20130113 05 - Inspection continue et roadmap 2013LeClubQualiteLogicielle
 
20130113 04 - Tests d'integration et virtualisation - La vision IBM
20130113 04 - Tests d'integration et virtualisation - La vision IBM20130113 04 - Tests d'integration et virtualisation - La vision IBM
20130113 04 - Tests d'integration et virtualisation - La vision IBMLeClubQualiteLogicielle
 
20130523 06 - The mathematics the way algorithms think / the mathematics the ...
20130523 06 - The mathematics the way algorithms think / the mathematics the ...20130523 06 - The mathematics the way algorithms think / the mathematics the ...
20130523 06 - The mathematics the way algorithms think / the mathematics the ...LeClubQualiteLogicielle
 

Más de LeClubQualiteLogicielle (20)

20171122 03 - Les tests de performance en environnement DevOps
20171122 03 - Les tests de performance en environnement DevOps20171122 03 - Les tests de performance en environnement DevOps
20171122 03 - Les tests de performance en environnement DevOps
 
20171122 04 - Automatisation - formation et certifications
20171122 04 - Automatisation - formation et certifications20171122 04 - Automatisation - formation et certifications
20171122 04 - Automatisation - formation et certifications
 
20171122 01 - REX : Intégration et déploiement continu chez Engie
20171122 01 - REX : Intégration et déploiement continu chez Engie20171122 01 - REX : Intégration et déploiement continu chez Engie
20171122 01 - REX : Intégration et déploiement continu chez Engie
 
20171122 02 - Engage developers to use better coding practices
20171122 02 - Engage developers to use better coding practices20171122 02 - Engage developers to use better coding practices
20171122 02 - Engage developers to use better coding practices
 
20171122 - Accueil Club Qualité Logicielle
20171122 - Accueil Club Qualité Logicielle 20171122 - Accueil Club Qualité Logicielle
20171122 - Accueil Club Qualité Logicielle
 
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...
 
20151013 - Agirc arrco : Behavior driven development
20151013 - Agirc arrco : Behavior driven development20151013 - Agirc arrco : Behavior driven development
20151013 - Agirc arrco : Behavior driven development
 
20151013 - Réduire les coûts des tests de performance ?
20151013 - Réduire les coûts des tests de performance ?20151013 - Réduire les coûts des tests de performance ?
20151013 - Réduire les coûts des tests de performance ?
 
20151013 - Accueil Club Qualité Logicielle
20151013 - Accueil Club Qualité Logicielle 20151013 - Accueil Club Qualité Logicielle
20151013 - Accueil Club Qualité Logicielle
 
20151013 - DevOps et qualification continue
20151013 - DevOps et qualification continue20151013 - DevOps et qualification continue
20151013 - DevOps et qualification continue
 
20140410 - Cartographie applicative multi-technologies et analyse d'impact
20140410 - Cartographie applicative multi-technologies et analyse d'impact20140410 - Cartographie applicative multi-technologies et analyse d'impact
20140410 - Cartographie applicative multi-technologies et analyse d'impact
 
20140410 - Implémentation de squash TM-TA - Architecture et méthodologie
20140410 - Implémentation de squash TM-TA - Architecture et méthodologie20140410 - Implémentation de squash TM-TA - Architecture et méthodologie
20140410 - Implémentation de squash TM-TA - Architecture et méthodologie
 
20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...
20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...
20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...
 
20140410 - Choisir et implanter un outil de test
20140410 - Choisir et implanter un outil de test20140410 - Choisir et implanter un outil de test
20140410 - Choisir et implanter un outil de test
 
20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...
20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...
20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...
 
20130113 06 - Travaux de recherche sur la corrélation entre qualité du code e...
20130113 06 - Travaux de recherche sur la corrélation entre qualité du code e...20130113 06 - Travaux de recherche sur la corrélation entre qualité du code e...
20130113 06 - Travaux de recherche sur la corrélation entre qualité du code e...
 
20130113 05 - Inspection continue et roadmap 2013
20130113 05 - Inspection continue et roadmap 201320130113 05 - Inspection continue et roadmap 2013
20130113 05 - Inspection continue et roadmap 2013
 
20130113 04 - Tests d'integration et virtualisation - La vision IBM
20130113 04 - Tests d'integration et virtualisation - La vision IBM20130113 04 - Tests d'integration et virtualisation - La vision IBM
20130113 04 - Tests d'integration et virtualisation - La vision IBM
 
20130523 06 - The mathematics the way algorithms think / the mathematics the ...
20130523 06 - The mathematics the way algorithms think / the mathematics the ...20130523 06 - The mathematics the way algorithms think / the mathematics the ...
20130523 06 - The mathematics the way algorithms think / the mathematics the ...
 
20130523 05 - Cyclomatic complexity
20130523 05 - Cyclomatic complexity20130523 05 - Cyclomatic complexity
20130523 05 - Cyclomatic complexity
 

20120612 02 - Automatisation des tests avec squash TA en environnement bancaire - Rex BGPI

  • 1. Automatisation des Tests avec Squash TA en environnement bancaire : retour d’expérience de la BGPI Club Qualité Logicielle 12 juin 2012
  • 2. /13 juin 2012/P2 Sommaire  Contexte  Plate-forme technique  Méthodologie  Points de vigilance  Questions & Réponses
  • 3. /13 juin 2012/P3 Présentation BGPI/SIDEV/HDF  HDF : Help Desk Fonctionnel Support fonctionnel Modélisation Pivot Rédaction des Spécifications fonctionnelles détaillées Recette Assurance Qualité et Tests de Non Régression  SIDEV : Études Informatiques BGPI  BGPI : Banque de Gestion Privée du groupe Crédit Agricole
  • 4. /13 juin 2012/P4 Contexte  Gains attendus des TNR  Régressions Incidents Mises en production  Recette plus complète : Risque d’anomalie Couverture  Objectifs  Vérifier l'absence de régression dans une nouvelle version  Recette effectuée dans un environnement dédié et maîtrisé  Sélection de scénarios métier pertinents et automatisables  Recette complémentaire de celle de la MOA (évolutions)
  • 5. /13 juin 2012/P5 Périmètre applicatif testé  Alpha (28 scénarios – juin 2010 – 6 mois) - application de téléconseil avec recommandations d'arbitrage - nombre important de régressions - technologie : JSF + QuipuKit, navigateur Firefox 3.2.6 local - outil de test utilisé : Squash TA/Selenium/CubicTest  Agora CRM (5 scénarios – janvier 2011 – 1 mois) - création de contacts clients (CRM) - forte sensibilité - technologie : GWT/GXT, navigateur IE8 sous Citrix - outil de test utilisé : Squash TA/Selenium/CubicTest  Agora NRT (21 scénarios – janvier 2012 – 1 mois) - application d'administration du nouveau référentiel tiers - structurant car référentiel - technologie : idem qu’Agora CRM - outil de test utilisé : Squash TA/Sahi
  • 6. /13 juin 2012/P6 Les différents contributeurs  Mise en place de la plate-forme de tests automatisés :  Equipe Production  Equipe Base de données  Equipe Intégration  Equipe Squash Henix  Réalisation des tests :  Développeurs Web  Maîtrises d’Ouvrage  Automaticien
  • 7. /13 juin 2012/P7 Architecture technique Squash TM Mantis Serveur ORACLE ‘TNR’ XFER Serveur ORACLE ‘TNR’ NR2 Serveur applicatif Webspheres - Alpha - Agora - Services communs Squash TM Apache MySQL PHP JAILER MAVEN IE Firefox Poste HDF Rapports d’exécution Usine TNR WebApp Automatisation Selenium Eclipse Cubic Test Subversive Applicatif BGPI Sahi JAILER MAVEN IE Firefox Poste HDF Subversion Sahi Eclipse Squash TA
  • 8. /13 juin 2012/P8 Méthodologie générale – Etapes générales du processus d’automatisation  Analyse des spécifications fonctionnelles  Choix des scénarios à automatiser  Alimentation du référentiel de tests (exigences, cas de test)  Détermination de l'échantillon de données ad'hoc  Codage des scénarios  Exécution des scripts  Génération de rapports d’exécution  Analyse des résultats et restitution du PV de recette TNR Squash TA / Sahi
  • 9. /13 juin 2012/P9 Méthodologie générale – Etapes générales du processus d’automatisation  Analyse des spécifications fonctionnelles  Choix des scénarios à automatiser  Alimentation du référentiel de tests (exigences, cas de test)  Détermination de l'échantillon de données ad'hoc  Codage des scénarios  Exécution des scripts  Génération de rapports d’exécution  Analyse des résultats et restitution du PV de recette TNR
  • 10. /13 juin 2012/P10 AGORA NRT – Aperçu d’un écran
  • 11. /13 juin 2012/P11 Vue 3D de l’application Agora NRT Vue créée par l’extension Firefox Web Developer
  • 12. /13 juin 2012/P12 Sahi – Présentation générale  Outil open source d’automatisation de tests pour applications Web  Lance et ferme le navigateur Web  Interprète et exécute les commandes transmises par le programme de test  Agit comme un proxy HTTP, en interceptant et vérifiant les messages HTTP échangés entre le navigateur et l’application testée  Librairies client fournissant une interface (API) entre le langage de programmation et le serveur proxy  Enregistreur de commandes fourni
  • 13. /13 juin 2012/P13 Sahi : Les points forts + API très riche (+ d’une centaine de méthodes d’accès / action / assertion) + support de nombreux langages de programmation + prise en main rapide + enregistreur intégré + indépendance vis à vis des différents interpréteurs Javascript + enregistreur fonctionnant sous tous les navigateurs + accès facilité aux objets d'une page Web + adapté aux applications Web riches avec contenu dynamique + « waits » implicites
  • 14. /13 juin 2012/P14 Sahi : Les points faibles - pas de couche graphique, écriture entièrement manuelle des scripts - technologie encore récente, qui doit faire ses preuves - impossible d'interagir avec l’environnement win32
  • 15. /13 juin 2012/P15 Méthodologie générale – Etapes générales du processus d’automatisation  Analyse des spécifications fonctionnelles  Choix des scénarios à automatiser  Alimentation du référentiel de tests (exigences, cas de test)  Détermination de l'échantillon de données ad'hoc  Codage des scénarios  Exécution des scripts  Génération de rapports d’exécution  Analyse des résultats et restitution du PV de recette TNR
  • 16. /13 juin 2012/P16 Etapes d’une campagne de tests automatisés
  • 17. /13 juin 2012/P17 Intégration et Recette de scripts (Java)  Intégration des scripts dans des classes Java  Mise en place de l’environnement  Exécution du script  Vérifications éventuelles (base, fichiers,…)  Réinitialisation de l’environnement
  • 18. /13 juin 2012/P18 Framework Squash TA  La plupart des outils d’automatisation de test existants se focalisent sur l’exécution du test et les vérifications dynamiques (c’est-à-dire les vérifications effectuées au cours de l’exécution). Mais ces fonctions seules ne permettent pas de mettre en place des tests réutilisables et maintenables.  Les cas de tests doivent être entièrement automatisés, c’est-à-dire qu’ils doivent inclure toutes les étapes suivantes :  préparation de l’environnement  exécution du test et vérifications dynamiques  vérifications post-exécution  nettoyage de l’environnement  Le framework doit prendre en charge la préparation de l’environnement avant le cas de test, les vérifications complémentaires après l’exécution, et le nettoyage de l’environnement.  En outre, il doit permettre de constituer des campagnes facilement et de les exécuter automatiquement.
  • 19. /13 juin 2012/P19 Points de vigilance  Sensibilité des tests aux modifications de :  spécifications fonctionnelles  framework de développement  l’interface utilisateur  structure de la base de données  données (ex: anonymisation) Chacun de ces points impacte plus ou moins fortement l’effort de maintenance des tests
  • 20. /13 juin 2012/P20 Conclusions  Squash TA assure un pilotage complet des tests, de la préparation au reporting  Gain de productivité et donc de couverture fonctionnelle : sur Agora NRT, 100% des scénarios de consultation ont été automatisés  Fiabilisation de la recette : 2 anomalies détectées par campagne en moyenne
  • 22. /13 juin 2012/P22 Contribution du service Production  Installation et configuration du poste de travail selon le besoin exprimé  Droits d’installation sur certains répertoires du poste de travail  Montage des serveurs applicatifs  Montage des bases de données
  • 23. /13 juin 2012/P23 Contribution de l’équipe Base de données  Mise à disposition de données iso-prod contenant un repository de données multiples, dans lesquelles peut « piocher » l'automaticien  Mise à disposition d'un ensemble de scripts shell permettant le déploiement des packages à mettre en production  Création de comptes Jailer
  • 24. /13 juin 2012/P24 Contribution de l’équipe Intégration  Déploiement et maintenance de l’environnement Squash TM et Mantis
  • 25. /13 juin 2012/P25 Contribution de l’équipe Squash Henix  Déploiement, configuration et maintenance de Squash TA sur le poste de travail  Adaptation du template projet aux applications du client  Développement d’extensions du framework spécifiques à l’environnement applicatif du client
  • 26. /13 juin 2012/P26 Contribution des Développeurs Web  Déploiement des versions à tester (deployIt)  Développement d’un lanceur de batchs  Mise en place d'un serveur de mails  Développement d'une page Web pour afficher le contenu d'un email ou d'un document pdf avant son formatage final, au format HTML, exploitable par l'outil de test  Renseignement de la matrice multi-critères (choix des scénarios à automatiser)
  • 27. /13 juin 2012/P27 Contribution des Maîtrises d’Ouvrage  Mise à disposition des spécifications fonctionnelles générales  Saisie des règles de gestion et des cas de test dans le référentiel de tests  Renseignement de la matrice multi-critères et choix final des scénarios à automatiser
  • 28. /13 juin 2012/P28 Contribution de l’automaticien  Renseignement de la matrice multi-critères  Maintenance de l’environnement de test et de la toolbox  Constitution des jeux de données de test  Ecriture et maintenance des scripts  Exécution des TNR automatisés
  • 29. /13 juin 2012/P29 Choix des scenarios à automatiser : utilisation d’une matrice multicritères
  • 30. /13 juin 2012/P30 Matrice : Grille de sélection instanciée
  • 31. /13 juin 2012/P31 Méthodologie générale – Etapes générales du processus d’automatisation  Analyse des spécifications fonctionnelles  Choix des scénarios à automatiser  Alimentation du référentiel de tests (exigences, cas de test)  Détermination de l'échantillon de données ad'hoc  Codage des scénarios  Exécution des scripts  Génération de rapports d’exécution  Analyse des résultats et restitution du PV de recette TNR
  • 32. /13 juin 2012/P32 Référentiel de tests – Squash TM
  • 33. /13 juin 2012/P33 Méthodologie générale – Etapes générales du processus d’automatisation  Analyse des spécifications fonctionnelles  Choix des scénarios à automatiser  Alimentation du référentiel de tests (exigences, cas de test)  Détermination de l'échantillon de données ad'hoc  Codage des scénarios  Exécution des scripts  Génération de rapports d’exécution  Analyse des résultats et restitution du PV de recette TNR
  • 34. /13 juin 2012/P34 Jailer : Description  Outil open-source codé en Java  Support de multiples bases (via JDBC)  Analyse de base de données relationnelles  Création d’un modèle d’extraction respectueux des contraintes de base de données  Génération d’échantillons de données  Exports de datasets au format DbUnit
  • 35. /13 juin 2012/P35 Jailer : Extraction de données BGPI3TMP BGPI3NR2 REF Données fonctionnelles Données fonctionnelles REF
  • 36. /13 juin 2012/P36 Jailer : Modèle d’extraction
  • 37. /13 juin 2012/P37 Jailer : Processus d’extraction
  • 38. /13 juin 2012/P38 Jailer : Exemple de dataset
  • 39. /13 juin 2012/P39 Contrôleur Sahi – Record & Playback
  • 40. /13 juin 2012/P40 Processus Subversion / Maven d’exécution d’une campagne de tests
  • 41. /13 juin 2012/P41 Sahi – Diagramme d’architecture