no. 1© logica 2012. all rights reserved offre flowunit by logica tests automatisés de flux de...

39
No. 1 © Logica 2012. All rights reserved Offre FlowUnit by LOGICA Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

Upload: jacques-champion

Post on 03-Apr-2015

104 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Offre FlowUnit by LOGICATests automatisés de flux de données inter-applicatifs

Page 2: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Agenda

Problématiques et enjeux1

Solution et fonctionnalités2

Concepts3

Exécution et rapports4

Cas d’utilisation5

Perspectives7

Exemple de mise en œuvre6

Références8

Démo et outils en ligne9

Page 3: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Problématiques et enjeux

• Les projets de plateforme d’échange et d’intégration d’applications font souvent appel à une multitude de technologies :• Pour le transport : fichiers locaux, FTP, JMS, Web Services, …• Pour le format des données : XML, plat délimité, plat à largeur fixe, …• Pour l’intégration de systèmes : TIBCO, webMethods, …• Pour prendre en charge certaines spécificités : compression, découpe, …

• La qualité des développements peut dans certains cas être critique (factures, logistique) et l’exécution de tests de conformité / non régression en amont de la mise en production est indispensable.

• L’exécution manuelle des tests peut s’avérer fastidieuse, risquée, coûteuse et nécessiter une connaissance poussée de la plateforme.

• L’automatisation des tests de flux s’inscrit dans une démarche d’industrialisation, avec des gains importants en temps et qualité.

Page 4: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Solution et fonctionnalités

FlowUnit :

• Outil d’automatisation des tests spécialisé dans les flux de données

• Basé sur des solutions open-sourceo Java 1.6 et librairies Apache Commonso Maven 2.2.1/3.0.xo JUnit 3.8.2o XMLUnit 1.3

• Configuration modulaire basée sur des fichiers XMLo Réutilisation de composants possibleo Paramétrage selon l’environnement cibleo Validation par XML Schema

Page 5: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Solution et fonctionnalités

Contrôle de la non-régression• Comparaison entre flux de données effectifs et flux attendus• Identification des problèmes précis• Génération de rapports de tests

Fonctionnement en boite noire• Comparaison en masse de nombreux cas de tests (attendus/effectifs)• Obtention de la sortie effective à partir d’un flux d’entrée

Exécution autonome ou sur un serveur d’intégration continue

Prise en compte des spécificités des formats de données• XML, fichier plat délimité, fichier plat à largeur fixe, texte seul• Comparateurs adaptés et paramétrables• Remontée d’erreurs précises et ciblées

Page 6: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Concepts – Vue d’ensemble

Positionnement et stratégie

Page 7: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Concepts – Vue d’ensemble

Hiérarchie des tests• Campagne de test : ensemble de suites de test (ex : échange)• Suite de tests : ensemble de cas de test (ex : demi-flux)• Cas de test : comparaison attendu/effectif (ex : cas nominal, cas d’erreur)

Notion de connecteurs• Transformation des données d’entrée en données comparables (effectives)• Déclenchement des flux inter-applicatifs et récupération des sorties• Prise en charge de nombreux transports (fichier, FTP, JMS, SOAP, etc.)

Notion de formats• Définition de la façon dont la comparaison est effectuée• Possibilité de nommer des champs ou d’en ignorer pour la comparaison• Prise en charge de nombreux formats (XML, délimité, largeur fixe, etc.)

Page 8: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Concepts – Hiérarchie et héritage

3 niveaux de configuration : global, campagne, suite de tests• Découpage en fichiers distincts, inclus explicitement ou automatiquement• Réutilisation des connecteurs/formats possible par héritage

Page 9: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Concepts – Déroulement d’un cas de test

Une chaine de connecteurs transforme les données d’entrée (input) en données effectives (actual)

Les données effectives sont comparées aux attendus (expected) pour générer une liste de différences

JMS Web Service

XSLT

webMethods FTP

Fichier

Page 10: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Exécution et rapports

• Exécution autonome• Adaptée à l’utilisation sur un poste développeur• Package « tout-en-un » : Maven inclus, dépendances fournies• Exécution par simple script (run.bat / run.sh)• Génération de rapports HTML datés• Possibilité d’exécuter les tests depuis Eclipse

• Exécution sur un serveur d’intégration continue (ex : Jenkins)• 2 packages fournis :

• Maven et les dépendances : à installer sur le serveur• Projet exemple FlowUnit : à commiter sur un dépôt de sources

• Récupération du projet et exécution de Maven par le serveur• Génération de rapports HTML et historisation des résultats• Exécution planifiée ou sur commit possible• Notification en cas d’échec d’un test

Page 11: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Exécution et rapports

En mode autonome Dans Eclipse Dans Jenkins

Page 12: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Exécution et rapports – Mode autonome

Statistiques par suite de tests

Statut des cas de test de la suiteet détail des échecs

Page 13: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Exécution et rapports – Dans Jenkins

Intégration dansProjectFactory

https://logica.it-toolbox.fr/redmine/ projects/project-factoryGestion

Code

Intégration

Tests

Référentiel

Partage

Page 14: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Exécution et rapports – Dans Jenkins

Projet

Statut dernière exécution(ici « des tests ont échoué »)

Météo du projet(tendances de stabilité)

Lancer une exécution

Liste des projets

Page 15: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Exécution et rapports – Dans Jenkins

Accès aux rapports détaillés

Graphique de tendance

Historique des exécutions

Détail d’un projet

Page 16: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Exécution et rapports – Dans Jenkins

Accès au détail d’un cas de test

Détail d’une suite de tests

Statuts des tests de la suite

Page 17: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Exécution et rapports – Dans Jenkins

Détail d’un cas de test

Détail des erreurs

Possibilité d’ajouter des notes

Page 18: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Cas d’utilisation – Ex. 1 : tests unitaires / ponctuels

• Besoin• Un développeur veut vérifier la conformité de son développement en

comparant plusieurs fichiers de sorties avec les sorties attendues

• Solution• FlowUnit : comparaison massive de fichiers (sans connecteurs)• Mise en place : 1h de formation rapide et création de la 1ere configuration• Templates de configuration existants• Utilisation : mode autonome, 5 min pour lancer et exploiter les rapports

• Gain• Réutilisation et modification de la configuration à volonté• Tests rapides et automatisés• Génération de rapports de tests archivables

Page 19: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Cas d’utilisation – Ex. 2 : tests de non-régression / intégration

• Besoin• Un projet veut vérifier régulièrement la non-régression des développements

de l’équipe tout au long du projet

• Solution• FlowUnit : déclenchement des flux grâce aux connecteurs• Dépôt de sources + serveur d’intégration continue : exécution des tests à

chaque commit, ou manuellement lorsque nécessaire• Mise en place : 3h de formation pour le configurateur, 1h pour les autres +

temps de configuration fonction de la complexité du projet• Utilisation : lancement en 1 clic, accès aux rapports de tests à tout moment

• Gain• Pas besoin de dédier une journée aux tests régulièrement• Configuration pouvant être enrichie au fur et à mesure de l’avancement• Suivi de l’évolution des tests, remontée d’alertes, réactivité

Page 20: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Cas d’utilisation – Ex. 3 : projet complet

• Besoin• Un projet a besoin de gérer tout son cycle de vie et souhaite disposer d’une

solution « clé en main »

• Solution• Offre Project Factory : plateforme projet industrialisée• Redmine : gestion du projet et des tâches, tableau de bord général• SVN + Jenkins + FlowUnit : intégration continue et tests automatisés• Nexus : référentiel de librairies et templates de projets réutilisables• TestLink : gestion des campagnes de recette interne et externe

• Gain• Ensemble d’outils fortement intégrés et prêts à l’emploi• Suivi de l’état d’avancement du projet au fil de l’eau• Visibilité pour chacun des acteurs et collaboration facilitée

Page 21: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA No. 21

Exemple de mise en œuvre

Page 22: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA No. 22

Exemple de mise en œuvre

• Loi 2009: calcul du gain brut• Jacques Vabre prestataire service B2B• Synchronisation prix fournisseur

Page 23: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA No. 23

Exemple de mise en œuvre

• Loi 2009: calcul du gain brut• Jacques Vabre prestataire service B2B• Synchronisation prix fournisseur

OMC

Jacques Vabre

Selecta

SOAP

JMS

Mon SI

GetPrice

ProfitsLaw

ProdPrice

SupPriceExemple complet

Page 24: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA No. 24

Exemple de mise en œuvre

Internet

• Loi 2009: calcul du gain brut• Jacques Vabre prestataire service B2B• Synchronisation prix fournisseur

GetCoffeePrice

Vision macro de l’échange

Page 25: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA No. 25

Exemple de mise en œuvre

• Loi 2009: calcul du gain brut• Jacques Vabre prestataire service B2B• Synchronisation prix fournisseur

Mon SI

GetCoffeePrice

Packaging

Page 26: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA No. 26

Exemple de mise en œuvre

• Loi 2009: calcul du gain brut• Jacques Vabre prestataire service B2B• Synchronisation prix fournisseur

Mon SI

Environnement

Page 27: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA No. 27

Exemple de mise en œuvre

• Loi 2009: calcul du gain brut• Jacques Vabre prestataire service B2B• Synchronisation prix fournisseur

Mon SI

Mise en gestion de conf

Page 28: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA No. 28

Exemple de mise en œuvre

• Loi 2009: calcul du gain brut• Jacques Vabre prestataire service B2B• Synchronisation prix fournisseur

Mon SI

Déclenchements auto des tests

Page 29: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA No. 29

Exemple de mise en œuvre

• Loi 2009: calcul du gain brut• Jacques Vabre prestataire service B2B• Synchronisation prix fournisseur

Mon SI

Exécution des tests

12 3

4

Page 30: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA No. 30

Exemple de mise en œuvre

• Loi 2009: calcul du gain brut• Jacques Vabre prestataire service B2B• Synchronisation prix fournisseur

Mon SI

Reporting

Page 31: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Perspectives

• Enrichissement des fonctionnalités• Nouveaux connecteurs• Meilleure détection des décalages lors de la comparaison• Préparation et nettoyage avant/après chaque cas de test (setUp/tearDown)

• Interface de configuration• Application web J2EE facile d’utilisation pour les nouveaux utilisateurs• Gestion de différents projets, campagnes, suites et cas de tests• Export au format XML « classique » pour versioning / exécution• Intégration avec d’autres services de Projet Factory (Jenkins, TestLink)

• Déploiement de la solution• Mise en place du produit sur d’autres projets (clients et internes)• Prise en compte des remarques des utilisateurs

Page 32: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Perspectives

IHM en cours de recette !Démo: https://demo.it-toolbox.fr/flowunit-ui

Page 33: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Références

• Projet de plateforme d’échanges « Oxybus »• Basée sur webMethods + framework spécifique Oxylane• Flux inter-applicatifs internes et B2B

• Automatisation des tests avec FlowUnit• Framework B2B (tests techniques) – 38 cas de test• Flux B2B (tests fonctionnels) – 15 flux, 2 à 14 cas par flux• Stress tests (volumétrie) – 2 flux, 5 à 6 cas par flux

• Mise en place de Jenkins (serveur d’intégration continue)• Exécution des tests à la demande• Tests sur plusieurs environnements (DEV71, DEV82, INT, PPRD)• Tableau de bord centralisé (architecture master/slave)

• Actions de formation et transfert de compétences

Page 34: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Références

Tableau de bord Jenkins

Page 35: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

FlowUnit s’inscrit dans la démarche Logica.

Centre de compétence & Outillage SOA

BUILD Tools

GénérateurEchanges et Services

Bibliothèque accélérateur ESB/SOA

Packaging et déploiement

Catalogue de templatesAutomatisation

installations soclePIC

REPO, TEST & RUN Tools

Référentiel de services & Outil de supervision

Audit / Planificateur Gestion d’erreurs Rapports

Administration des flux Supervision Technique Transcodifications

Démo et outils en ligne

Page 36: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Démo et outils en ligne

No. 36

Visitez notre sitehttps://it-toolbox.fr

Téléchargez cette présentation sur

notre WIKI !

Page 37: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Pourquoi IT Toolbox ?

No. 37

EligibilitéSpécificationReferencementDeveloppementRecetteProduction

Cycle de vie d'un échange

Page 38: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs

No. 38© Logica 2012. All rights reserved Offre FlowUnit by LOGICA

Logica is a business and technology service company, employing 39,000 people. It provides business consulting, systems integration and outsourcing to clients around the world, including many of Europe's largest businesses. Logica creates value for clients by successfully integrating people, business and technology. It is committed to long term collaboration, applying insight to create innovative answers to clients’ business needs. Logica is listed on both the London Stock Exchange and Euronext (Amsterdam) (LSE: LOG; Euronext: LOG). More information is available at www.logica.com

Merci !

Rémy DELMOTTE+33 7 86 96 90 [email protected]

Logica Nord, 8 rue Anatole France, 59043 LILLE CEDEX

Fabien CRESPEL+33 6 82 89 17 [email protected]

Page 39: No. 1© Logica 2012. All rights reserved Offre FlowUnit by LOGICA Tests automatisés de flux de données inter-applicatifs