Méthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel.



Documents pareils
Projet de Java Enterprise Edition

COMPÉTENCES TECHNIQUES

Vérifier la qualité de vos applications logicielle de manière continue

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

Paul FLYE SAINTE MARIE

Devenez un véritable développeur web en 3 mois!

Burckel Thomas. Formation. Compétences

les techniques d'extraction, les formulaires et intégration dans un site WEB

Programmation Web. Madalina Croitoru IUT Montpellier

Magento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s

Catalogue Formations Jalios

Catalogue des Formations Techniques

TAGREROUT Seyf Allah TMRIM

Joomla! Création et administration d'un site web - Version numérique

Quel logiciel DE CRM choisir pour votre force de vente terrain?

Surveiller les applications et les services grâce à la surveillance réseau

Documentation technique

Informatique & Systèmes de Communication. Stages de 12 à 16 semaines aux Etats-Unis

DENOMINATION DU DOCUMENT : CAHIER DES CHARGES «MONITORING DOMOTIQUE» MOE : GROUPE 6 (SANOGO, AFFANE, DIALLO, N GOUAN, DJIMERA)

Armand PY-PATINEC 2010

Résoudre les problèmes PHP, les meilleures (et les pires) techniques

Les différents parcours en S4

Offres de stages 2011/2012

Cursus Sage ERP X3 Outils & Développement. Le parcours pédagogique Sage ERP X3 Outils et Développement

Olivier Deheurles Ingénieur conception et développement.net

Loïc Rossignol Ingénieur Consultant

TABLE DES MATIERES 1 INTRODUCTION OBJECTIF SOLUTION ETUDE COMPARATIVE GESTIÒIP PHPIPAM TEEMIP...

Gestion du parc informatique matériel et logiciel de l Ensicaen. Rapport de projet. Spécialité Informatique 2 e année. SAKHI Taoufik SIFAOUI Mohammed

CHEF DE PROJET - DÉVELOPPEUR EXPÉRIMENT É PHP - JAVA -.NET. 28 ans - 7 ans d'expérience

INGÉNIEUR - DÉVELOPPEUR EXPÉRIMENT É PHP - MAGENT O. 30 ans - 6 ans d'expérience

Refonte front-office / back-office - Architecture & Conception -

PRIMAVERA P6 ENTERPRISE PROJECT PORTFOLIO MANAGEMENT WEB SERVICES

Introduction MOSS 2007

Attaques applicatives

Zabbix. Solution de supervision libre. par ALIXEN

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :

novatis Agence Web innovatrice

NOS SERVICES. Masta Idéal ONGD, nous sommes une agence web à votre service. I. Création de site internet. III.

webmestre : conception de sites et administration de serveurs web 42 crédits Certificat professionnel CP09

Formation en Logiciels Libres. Fiche d inscription

Expert technique J2EE

Dans nos locaux au 98 Route de Sauve NÎMES. Un ordinateur PC par stagiaire, scanner, imprimante/copieur laser couleur

Sommaire. 1 Introduction Présentation du logiciel de commerce électronique 23

Cursus Sage ERP X3 Outils & Développement. CURSUS Sage ERP X3 Outils & Développement ADVANCED. Outils avancés. 2 jours X3A-ADM. Développement 1 &2

Master CCI. Compétences Complémentaires en Informatique. Livret de l étudiant

THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL

Conditions Particulières de Maintenance. Table des matières. Ref : CPM-1.2 du 08/06/2011

OFFRE DE SERVICE.

LICENCE PROFESSIONNELLE

Site web de Support : Manuel utilisateur

Nous vous proposons des formations à la carte et vous accompagnons dans leur mise en oeuvre au quotidien.

Maarch Framework 3 - Maarch. Tests de charge. Professional Services. 11, bd du Sud Est Nanterre

Microsoft OSQL OSQL ou l'outil de base pour gérer SQL Server

Logistique et transport. Votre guide SMS

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage

Session de transfert Atelier 3 Présentation du nouveau KF en construction. Christian Perreault, Université Laval

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

Description de l implantation dans le centre d examen (nom du service ou de l outil et caractéristiques techniques)

Formation : WEbMaster

FileMaker Server 14. Aide FileMaker Server

Développer des Applications Internet Riches (RIA) avec les API d ArcGIS Server. Sébastien Boutard Thomas David

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

Auteur LARDOUX Guillaume Contact Année 2014 DEVELOPPEMENT MOBILE AVEC CORDOVA

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Conception d'un système d'information WEB avec UML Par Ass SERGE KIKOBYA

Configuration Matérielle et Logicielle AGORA V2

Développer avec les technologies ESRI. ESRI Developer Network (EDN) Gaëtan LAVENU ESRI France Jérémie MAJEROWICZ ESRI France

Rapport de stage. Création d un site web. Stage du 20/01/2013 au 21/02/2013

Un serveur web léger et ouvert

White Paper - Livre Blanc

Créer et animer une boutique en ligne avec Wordpress (environnement PC et MAC)

Formation : Langues : Types d Intervention et Secteurs d Activité :

3W Academy Programme de Formation Développeur Intégrateur web Total : 400 heures

Architectures web/bases de données

Dossier de Presse. Ergonomie. E-commerce. Portails internet. Applications Facebook. Logiciels «prêts à adapter» Logiciels sur mesure

Sauvegarde des bases SQL Express

Comment booster vos applications SAP Hana avec SQLSCRIPT

AJAX. (Administrateur) (Dernière édition) Programme de formation. France, Belgique, Suisse, Roumanie - Canada

Agence Web innovatrice

SUPPORT DE COURS / PHP PARTIE 3

Modèle de cahier des charges pour un appel d offres relatif à une solution de gestion des processus métier (BPM)

Le test automatisé des applications web modernes

Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement

Optimiser pour les appareils mobiles

PostgreSQL. Formations. Catalogue Calendrier... 8

DA MOTA Anthony - Comparaison de technologies : PhoneGap VS Cordova

CNAM Déploiement d une application avec EC2 ( Cloud Amazon ) Auteur : Thierry Kauffmann Paris, Décembre 2010

SPT Description du cours NORAMSOFT SPT2013. SharePoint 2013 pour développeurs

Serveur de travail collaboratif Michaël Hoste -

CAHIER DES CHARGES D IMPLANTATION

Pratique et administration des systèmes

Atelier Le gestionnaire de fichier

Sommaire. Préface 1 : Pourquoi choisir Magento? Chapitre 1 : Magento, quésaco? Chapitre 2 : Quoi sous le capot?

MANUEL WORDPRESS. Objectif: Refonte d un site web sous Wordpress I PRE-REQUIS: 1 / Créer un backup (sauvegarde) du site:

Portage et développement de jeux Java sur téléphones mobiles. Licence Professionnelle SIL 25 juin 2007

Mysql. Les requêtes préparées Prepared statements

PostgreSQL. Formations. SQL avancé Calendrier... 18

Qu'est-ce que le BPM?

Transcription:

Méthode de Test Pour WIKIROUTE Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel. [Tapez le nom de l'auteur] 10/06/2009

Sommaire I. Introduction... 3 II. Présentation du projet... 3 III. Méthode de test... 5 1. Les méthodes de test fonctionnelles :... 5 2. Les méthodes de test non fonctionnelles :... 5 IV. Logiciel utilisé pour les différentes méthodes de test :... 6 1. Méthode de test fonctionnelle :... 6 2. Méthode de test non fonctionnelle :... 7 V. Module critique :... 8 VI. Conclusion :... 9 2

I. Introduction L objectif de ce document est de mettre en place les différentes manières d effectuer les tests nécessaires sur notre projet annuel afin d assurer une qualité suffisante de cette application. Etant donné que notre projet annuel est une application web, nous allons essayer de trouver des moyens efficaces de test du logiciel existante qui se rapproche le plus de notre projet intitulé WIKIROUTE dont nous parlerons plus en détaille ultérieurement. Le test du logiciel est l activité destinée à trouver les erreurs du logiciel. Un test est positif s il permet de trouver des erreurs et qu il est efficace s il ya une forte probabilité de découverte d erreur. II. Présentation du projet WIKIROUTE est un projet qui permet à des utilisateurs de consulter des itinéraires saisis par d autres utilisateurs, et d en créer. Les trajets des itinéraires saisis seront visualisés sur une carte en mode visuel ainsi qu en mode texte aussi. Nous allons commencer par vous présenter les outils utilisés lors de l implémentation du projet : Langage de programmation : PHP5, CSS, XHTML, JavaScript ; API : Google Map API ; Bibliothèque : MDB2(PEAR) Base de données : fonctionnel sur Postgres et MySQL ; Nous allons maintenant parler les différents modules de l application: 3

Le module affichage itinéraire : Il permet aux utilisateurs de visualiser un itinéraire après avoir effectué un choix parmi les résultats proposés par le module de recherche. Le module ajout itinéraire : Il permet aux utilisateurs de faire la saisie des itinéraires qu ils veulent proposer. Le module recherche itinéraire Il permet aux utilisateurs d effectuer une recherche d itinéraire(s) sur celles enregistrés dans la base de données. Le module compte utilisateur Il permet la création de compte utilisateur, la gestion de compte (effectuer des modifications, changement de mot de passe, etc. ). Le module administrateur Il permet à l administrateur de l application d avoir une vue globale sur l ensemble des informations existante dans la base de données afin qu il puisse modérer le site correctement. 4

III. Méthode de test 1. Les méthodes de test fonctionnelles : Parmi les nombreuses méthodes de test fonctionnelles qui existent nous pensons que les suivantes sont indispensables pour la qualité de l application : Le test unitaire : Dans le premier stage des tests, les fonctions ou les modules de code sont testés, habituellement par les programmeurs, car ces tests supposent une connaissance approfondie du design interne et du code de l application. Pas toujours facile à exécuter, sinon l application n a une architecture bien structurée. Ce type de test peut nécessiter le développement des drivers ou des programmes additionnels. Le test d intégration : Ce type de test teste des parties de l application et l'intégration a pour but de valider le fait que toutes les parties développées indépendamment fonctionnent bien ensemble. Les parties peuvent être des modules de code, applications individuelles, applications du type client ou serveur d un réseau etc. Le test d intégration est notamment relevant sur les systèmes client / serveur (ce qui est le cas dans notre application) et sur les systèmes distribués. 2. Les méthodes de test non fonctionnelles : Parmi les nombreuses méthodes de test non fonctionnelles qui existent nous pensons que les suivantes sont indispensables pour la sécurité et la survie de l application : Tests de charges Tester une application sous de grandes charges, comme par exemple tester un site web sous une série de charges pour déterminer jusqu à quel point la réponse du système n est plus prompte ou craque. 5

Test de performances Terme utilisé alternativement pour les tests de volume et tests de charge. Dans le cas idéal le test de performance (et d autre types de tests) sont prévus dans la documentation où sont spécifiés les requêtes. Test de sécurité Tester la manière dont le système protège contre les accès internes ou externes pas autorisés, endommagement par mauvaises intentions etc... Peut nécessiter des techniques de test sophistiquées. IV. Logiciel utilisé pour les différentes méthodes de test : 1. Méthode de test fonctionnelle : Test unitaire : PhpUnit Le développement d une application implique bien souvent des modifications du code initial (correction d erreurs, ajout de fonctionnalités, remaniement de code...). Il peut alors être intéressant de mettre en place un mécanisme de tests permettant de vérifier que les nouvelles modifications ne détériorent pas les fonctionnalités existantes. Pour cela nous allons utiliser un outil permettant de réaliser cela. PHPUnit, un utilitaire de tests unitaires pour PHP qui est le langage de programmation utilisé pour la réalisation de l application. PHPUnit est un Framework de test unitaire open source dédié au langage de programmation PHP. Basé sur JUnit (bibliothèque de test unitaire pour le langage de programmation Java), il intègre tous les concepts communs aux bibliothèques de tests unitaires. Test d'intégration : test manuel C est un test qui se déroule dans une phase suivante d'un projet de développement logiciel immédiatement après les tests unitaires. Il consiste, une fois que les développeurs ont chacun validé leurs développements ou leurs correctifs, à regrouper leurs modifications ensemble dans le cadre d'une livraison. 6

Pour ce test nous n allons pas utiliser d outils particuliers, il sera fait de manière manuelle pour les raisons suivantes : Nous remarquons que l ensemble des modules mise à par celui de l affichage d itinéraire ont recourt uniquement à la base de données. Nous remarquons dans le cadre générales les différentes modules de l application fonctionnent de manière indépendante les unes des autres. Sauf le module d affichage itinéraire qui prend en entrée le ou les résultat(s) du module de recherche. il y a peu de test à effectuer au niveau de la communication entre ces deux modules car le module d affichage sollicite le module de recherche une seule fois par affichage d itinéraire. Nous savons exactement le résultat et la forme de réponse attendus par le module affichage. 2. Méthode de test non fonctionnelle : Test de performance et de charge : OpenSTA o Test de performance : C est un test dont l'objectif est de déterminer la performance d'un système informatique. L'acception la plus courante de ce terme est celle dans laquelle ces tests vont avoir pour objectif de mesurer les temps de réponse d'un système en fonction de sa sollicitation. o Test de charge : Il s'agit d'un test au cours duquel on va simuler un certain nombre d'utilisateurs sur une durée relativement longue, pour voir si le système testé est capable de supporter une activité intense sur une longue période. Pour les deux tests précédents nous proposons l utilisation d OpenSTA, qui est une solution d injection de charge HTTP/HTTPS qui permet de tester les performances d une application web développée en J2EE,.NET, PHP, etc. 7

Pour son coté fonctionnelle, OpenSTA est un logiciel de test d architecture conçu autour de COBRA. La boite à outil actuelle à la capacité de réaliser des scripts de tests de charge HTTP et HTTPS et de mesurer les performances sur les plateformes Win32. Les enregistrements sont faits sur le navigateur(le client) du testeur et sont de simples scripts qui peuvent être édités et contrôlés avec un langage de haut niveau. Ces sessions de scripts peuvent être rejouées pour simuler des tests de charges et se basent sur un moteur de génération de charge. Les résultats et les statistiques sont enregistrés pendant les tests par une variété de mécanismes automatiques et manuels. Cela inclus des scripts horodatés, flux SNMP, "Windows Performance Monitor stats" et des résultats HTTP. Ces données peuvent sauvegardées pendant l'exécution des tests. Test de sécurité : utilisation de la classe sql_inject Vu que c est une application Web qui est accessible de l extérieur et qui collecte des informations saisi par des utilisateurs divers. Il convient d instaurer un minimum de control sur les requêtes destinées à la base de données. L utilisation d une classe PHP nommé "SQL_INJECT" permet de résoudre le problème. Elle analyse les valeurs qui sont destinées aux requêtes SQL, avant qu elles ne compromettent le serveur. V. Module critique : Une petite analyse de l application montre la présence d un module critique, qui doit fonctionner correctement car si tel n est pas le cas il en va d un dysfonctionnement général de l application. Le module critique est celui de l ajout qui se charge de traiter et de sauvegarder les informations dans la base de données. Qui est exploité par tous les autres modules de l application. Raison pour la quelle ce module mérite une attention particulière de la part des développeurs afin que la fiabilité de l application ne soit mis en doute. 8

VI. Conclusion : Nous avons faits un ensemble de choix tant sur la manière de tester l application que sur les outils de test à utiliser pour effectuer ces tests. Ces choix ont été faits de manière à augmenter le pourcentage de détection d erreur afin de pouvoir les corriger. Néanmoins, nous ne pouvons assurer la fiabilité de l application à 100% même si nous croyons qu après une application des méthodes de test proposés, une qualité suffisante de l application. Car nous devons malheureusement reconnaitre qu une application, peu importe laquelle n est jamais fiable à 100%. 9