[PDF] Introduction aux tests du logiciel - IRIF





Previous PDF Next PDF



Test de logiciel dans les méthodes agiles

Positionnement du test dans le cycle de vie du logiciel. ? Test et méthodes agiles Le test est une méthode de validation partielle des logiciels.



Mettre en oeuvre des méthodes de test - T.3

Les méthodes de tests statiques consistent en l'analyse textuelle du code du logiciel afin d'y détecter des erreurs sans exécution du programme.



Méthodes et outils pour le test logiciel

21 avr. 2009 Méthodes et outils pour le test logiciel. Génie logiciel [cs.SE]. Université Joseph-. Fourier - Grenoble I 2007. tel-00377293  ...



Méthodes de test

Un peu de génie logiciel. Types de test. 3. Formalisation. Eléments. Probl`emes. Point de départ. 4. Méthodes de test. Test en “bo?te blanche”.



Glossaire CFTL/ISTQB des termes utilisés en tests de logiciels

2006 CFTL + International Software Testing Qualifications Board. Glossaire CFTL/ISTQB des termes ANNEXE B (METHODE POUR COMMENTER CE GLOSSAIRE) .



Test et Validation du Logiciel

2.2 Le test fonctionnel de logiciel VVT : Validation Vérification & Test des logiciels ... Certains niveaux de certification exigent des méthodes.



CFTL

Appellations courantes. • Responsable de Méthode et de Processus de test Responsable Méthode Assurance Qualité ... globale de développement logiciel.



Glossaire CFTL/ISTQB des termes utilisés en tests de logiciels

Couverture de code : une méthode d'analyse qui détermine quelles parties du logiciel ont été exécutées (couvertes) par une suite de tests et quelles parties 



Introduction aux tests du logiciel

Il y a différentes méthodes: – Test bo?te noire-blanche. – Prédiction d'erreur (on sait ce qu'on cherche). – Tests automatiques 



Génie logiciel avancé

sélection de tests. Méthodes de sélection de tests. Niveaux de test. Niveaux Méthode : Sélection des tests à partir de la spécification de façon à.



Cas de test en génie logiciel - Université TÉLUQ

Objectif de test : Permet de vérifier si le cas d’utilisation « changer NIP » rencontre la bonne cible de test y compris la navigation la saisie de données le traitement et la récupération Technique : Il faut exécuter chaque chemin du cas d’utilisation « changer NIP » en



Introduction aux tests du logiciel - IRIF

Tests de recette: test de r eception du logiciel chez le client nal Tests int egration syst eme: test de l’int egration du logiciel avec d’autres logiciels Tests systeme: test d’acception du logiciel avant livraison (nouvelle version par exemple) Tests Integration: test de l’int egration des di erents composants (avec ou sans hardware)



Test et Validation du Logiciel - Université de Bordeaux

Approches du test L’activité de test se décline selon 2 approches : • rechercher statiquement des défaut simples et fréquents (contrôle) • définir les entrées (appelées ‘données de test’) qui seront fournies au logiciel pendant une exécution test



Searches related to méthode de test logiciel PDF

M´ethodes de test Outils Un peu de g´enie logiciel Types de test Niveaux et phases Niveaux : Test unitaire = test des (petites) parties du code s´epar´ement Test d’int´egration = test d’un ensemble de parties du code qui coop`erent Test du syst`eme = test du syst`eme entier en inspectant sa fonctionnalit´e

Qu'est-ce que le Test logiciel ?

L’objectif de cet article est de vulgariser les dimensions majeures du test logiciel et de donner un retour d’expérience des meilleures pratiques telles que nous les percevons chez SoftFluent. Le test est une discipline vaste qui permet de s’assurer de la qualité des logiciels.

Quels sont les meilleurs logiciels pour créer des tests en ligne ?

Quizlet est un logiciel permettant de créer des tests en ligne qui est bien connu pour son format de flashcard caractéristique. Bien qu’il soit surtout utilisé dans les écoles, cet outil peut également être utilisé sur le lieu de travail pour tester la compréhension et la rétention des concepts de formation par les employés.

Comment déterminer la méthode et le plan des tests ?

Définir la méthode et le plan des tests en remplissant le modèle de méthode et du plan des tests en tenant compte de : Quels types de tests doivent être remplis ? Comment chaque phase de test sera-t-elle conservée ? Comment les défauts seront-ils gérés et résolus ? Quels sont les critères d’acceptation ?

Quelle formation pour un test logiciel ?

Il est important de noter qu’à l’heure actuelle, sur le territoire français, l’offre de formation universitaire en test logicielle est peu fournie. Proposée par l’IUT de Laval, cette formation est accessible à niveau bac +2 (filières informatiques ou scientifiques), en formation initiale, continue ou VAE.

Introduction aux tests du logiciel

F.X. Fornari

xavier.fornari@esterel-technologies.com

P. Manoury

pascal.manoury@pps.jussieu.fr 2011

Contents

1 Presentation du cours

3

2 Introduction aux tests logiciels

3

2.1 Qu'est-ce qu'un logiciel

3

2.2 Qu'est-ce que tester un logiciel

4

2.3 Que teste-t-on ?

6

2.4 Quelques principes de base

7

3 Les dierentes etapes du test des logiciels

8

4 Les dierents type de tests

9

4.1 Les tests fonctionnels

9

4.2 Les tests structurels

10

5 Mise en uvre

10

5.1 Les dierents documents

10

5.2 Organisation du test

11

5.3 Conclusion

12

6 Jeux de tests

12

7 Test Structurels

16

7.1 LCSAJ

16

7.2 Couverture MC/DC

26

7.3 Couverture Iterations

27

7.4 Couverture des donnees

28

7.5 Developpement de tests structurels

30

7.6 Points particuliers

32

7.7 Tests Structurels: Conclusion

32
1

8 Test fonctionnels33

8.1 Analyse partionnelle

34

8.2 Les autres tests fonctionnels

37

8.3 Tests fonctionnels: conclusion

38

9 Cycle de vie

39

9.1 Les Phases de tests

40

9.2 Les Tests par Phases

41

9.3 ... En Descente

42

9.4 ... En Montee

44

9.5 Gestion de processus

45
2

1 Presentation du cours

Contenu du cours

Le test logiciel: Nous en faisons, mais qu'est-ce precisement ?

Quand et comment fait-on du test ?

But du cours: sensibiliser au test en general:

{Le sujet est vaste {les applications variees

2 Introduction aux tests logiciels

2.1 Qu'est-ce qu'un logiciel

Un logiciel, ce n'est pas seulement du code, mais aussi: des besoins;

Une gestion de projet;

Une specication (fonctionalites, contraintes, facteur de qualite, interface); Une conception: fonctionnelle, architecturale, algorithmes, conception detaillee,..

Un code source;

Un executable;

... et des tests ! L'importance des tests se voit en cas de problemes: systeme de gestion de li- cences de la FFV s'eondrant des la mise en operation, Ariane 5, portes bloquees sur une automobile, plantage serveur lors de la coupe du monde de foot...

Le Logiciel

Q0: Qu'est-ce que du logiciel ?

des besoins, exprimes par un client une gestion de projet {cycle de vie (classique, agile, ...) avec ses delivrables {les outils et l'environnement de developpement une specication: la denition du logiciel en reponse aux besoins 3 une conception: globale, architecturale, detaillee. Les composants et leurs echanges sont denis du code unproduit ... des tests !

2.2 Qu'est-ce que tester un logiciel

Q1:que veut dire \tester un logiciel" ? Etant donne un logiciel, comment le tester ? Le tester, c'est verier qu'il est conforme, mais a quoi, sur quel criteres Denition possible\Processus d'analyse d'un programme avec l'intention de detecter des anomalies dans le but de le valider"

Tester un logiciel

Q1: Que veut dire \tester un logiciel" ?

C'est valider sa conformite,

Par rapport a des exigences

C'est-a-dire par rapport a l'ensemble de la specication, et de la conception du logiciel

En fonction de criteres.

Par exemple, domaines d'entrees, taux d'erreurs acceptable, ...

Q2: Y-a-t-il plusieurs types de tests ?

Il y a dierentes methodes:

{Test bo^te noire-blanche, {Prediction d'erreur (on sait ce qu'on cherche) {Tests automatiques, ... il y a dierents types de tests: fonctionnels, non-fonctionels, structurels 4

Types de tests

Fonctionnels:

{est-ce que le logiciel est conforme a la specication ? {lies a la specication, a la qualite, a la performance, a l'interfacage,

Non-Fonctionnels:

{est-ce que son usage est conforme ? {lies a la conguration, la compatibilite, a la documentation, austress,

Structurels:

{est-ce que le codage est correct ? {fautes d'implementation, ou fonctions non prevues.Q3: Y-a-t-il des alternatives ? {methodes formelles: model-checking, SAT, ..., methode par ranements (B) Interpretation abstraite (estimation d'erreur, runtime-error, ...) Ces methodes sont de plus en plus employees. Probleme: adequation modele realite, passage a l'echelle {relecture de code: detection d'erreurs statiques, mais pas dynamiques. C'est lourd, mais ca favorise la connaissance du code. Les regles de codage sont importantes, et peuvent ^etre veriees par des outils {analyse de securite: validation d'une architecture. C'est l'identication en amont de tous les problemes potentiels.

Q4: Co^ut du test ?

{30 a 40% du co^ut de developpement, voire plus. Mais un bug peut co^uter encore plus cher... 5

Un metier a part entiere

Seule activite dans le cycle de developpement ou l'on peut voir toutes les fonctionnalites d'un produit.

Dierent des developpeurs specialises,

C'est une activite creatrice:

{il faut imaginer les scenarii pouvant mettre le logiciel en defaut, {il faut imaginer les bancs de tests, les environnements de simulations (logiciel de conduite de train, de controle des commandes de vol) comment faire ?) {demande rigueur et competence

Mais c'est une activite mal percue:

{le testeur est en n de cha^ne)retards {certains tests sont repetitifs {mal consideres par les developpeurs

C'est pourtant une activite essentielle de R&D

2.3 Que teste-t-on ?

Typologie des logiciels

Tentative de classication:

Transformationnels: logiciel de paie, compilateur, ...

Interactif: Windows manager, WEB, DAB, ...

Reactifs: comportement cyclique (cha^ne de production) Reactifs s^urs: en milieu contraints: nucleaire, avionique, defense, ... Pour chacune de ces classes, des contraintes dierentes sont a gerer.

Exemples de contraintes

Base de donnees

{volume des donnees, integrite Web {disponibilite, multi-navigateur, liens,

Compilateur

6 {test du langage d'entree, des optimisations, du code genere, ...

Interface graphique

{multi-threading, sequences d'actions,undo, vivacite

Code embarques

{tests sur h^ote, et tests sur cibles, tracabilite {avionique, nucleaire, ... : exhaustivite, proche du 0 defaut {telephone mobile: time-to-market tres court ! OS

2.4 Quelques principes de base

Quelques principes de base

P1: Independance

un programmeur ne doit pas tester ses propres programmesMais il vaut mieux faire ses tests avant de delivrer, et aussi les conserver !

P2: Paranoa

Ne pas faire de tests avec l'hypothese qu'il n'y a pas d'erreur (code trivial, deja vu, ...))bug assure ! Conseil: un test doit retournererreurpardefaut. Le retourokdoit ^etre force.

P3: Prediction

La denition des sorties/resultats attendus doit ^etre eectuee avant l'execution des tests. C'est un produit de la specication. c'est necessaire pour des developpements certies les donnees sont fournies parfois au niveau systeme (ex: Matlab), mais les resultats seront dierents a l'implementation. parfois les donnees sont trop complexes a fournir directement (elements de compilation, environement complexe...)

P4: Verication

Il faut inspecter minutieusement les resultats de chaque test.

Mais aussi la pertinence des tests

(DO-178B): le process assure un \tuyau" propre, mais il faut quand m^eme des ltresverication 7 C'est la separation de l'execution et de l'analyse.

P5: Robustesse

Les jeux de tests doivent ^etre ecrits avec des jeux valides, mais aussi invalides ou incoherentes: on ne sait jamais ce qui peut arriver

P6: Completude

Verier un logiciel pour verier qu'il ne realise pas ce qu'il est suppose faire n'est que la moitie du travail. Il faut aussi verier ce que fait le programme lorsqu'il n'est pas suppose le faire

En cas de bug ?

Verier que le test est bien correct (P4)

Verier que le probleme n'est pas deja repertorie (base de bugs par exem- ple)

Etablir un rapport de bug

{donner un synopsis succint et precis {donner une description claire, avec tous les details de reproduction du bug {si possible, essayer de reduire l'exemple. Renvoyer un \tas" en disant \ca marche pas" ... ne marche pas.

3 Les dierentes etapes du test des logiciels

Quand commencer ?

Le test commence de suite ! Ici, le cycle en V. mais aussi approches incrementale, agiles, ... 8

Les dierents niveaux

Tests de recette: test de reception du logiciel chez le client nal Tests integration systeme: test de l'integration du logiciel avec d'autres logiciels Tests systeme: test d'acception du logiciel avant livraison (nouvelle version par exemple) Tests Integration: test de l'integration des dierents composants (avec ou sans hardware) Tests Unitaires: tests elementaires des composants logiciels (une fonction, un module, ...)

Tests de non-regression

\Smoke-tests": jeu reduit de tests pour valider unbuildavant de passer a la validation

La planication

Ces dierents niveaux de tests doivent ^etre planies (c'est l'objet du plan projet). Theoriquement, on prepare les tests en m^eme temps que le developpement correspondant au niveau.On peut aussi le faire incrementalement, ou enpipeline. Demande une gestion de projet tres ne. En Extreme-Programmming: paire de developpeurs/paires de testeurs. De toute facon, il y a rebouclage permanent (bugs, changements de specs): il faut s'adapter !

4 Les dierents type de tests

4.1 Les tests fonctionnels

Tests fonctionnels

Objectif: Analyse du comportement

{conformite, comportement nominal, aux limites, robustesse 9 Bases sur les specications, qui donnent le comportement attendus. {Attention: il ne sut pas de donner des tests pour chaque exigence, mais il faut aussi comprendre les interactions possibles.

Il faut mettre en place des strategies.

{De m^eme qu'une exigence doit pouvoir ^etre codee, elle doit pouvoir ^etre testee)il faut une relecture de la specication par les testeurs Dierentes methodes seront abordees dans la suite de ce cours

4.2 Les tests structurels

Tests structurels

Objectif: Detecter les fautes d'implementation

Detecter si:

{detection de cas de \plantage" {le logiciel n'en fait pas trop

Niveau architectural & code:

{Analyse des ots de contr^ole, de donnees, condition logiques et des iterations. {Depend de l'implementation. Selon les cas, le testeur a acces ou non au code. De m^eme qu'une exigence fonctionnelle doit pouvoir ^etre codee, une exi- gence de codage doit pouvoir ^etre testee Dierentes methodes seront abordees dans la suite de ce cours

5 Mise en uvre

5.1 Les dierents documents

Documents

Le test s'inscrit dans le cycle de vie du projet. Les documents suivant font partie des elements necessaires pour le test: Plan Projet: c'est le plan global du projet, servant de reference pour l'ensemble Specication / Conception: les documents permettant l'elaboration du code et des tests associes

Plan de tests: ce document doit decrire:

10 {L'organisation du tests: equipes, environnement {Les strategies: en fonction des elements d'objectifs du projet, de specications, d'architectures, dierentes strategies de tests sont a envisager.quotesdbs_dbs6.pdfusesText_11
[PDF] les tests psychologiques d'aptitudes et de personnalité

[PDF] test de personnalité gratuit ? imprimer

[PDF] calcul ij rsi

[PDF] calcul montant ij rsi

[PDF] rsi arret maladie longue durée

[PDF] arret maladie rsi auto entrepreneur

[PDF] rsi indemnités journalières professions libérales

[PDF] indemnite journaliere rsi auto entrepreneur

[PDF] arret de travail rsi ou ram

[PDF] indemnités journalières rsi imposition

[PDF] methode de travail pour etudier

[PDF] méthode de travail scolaire

[PDF] lecture active et efficace

[PDF] la lecture active wikipedia

[PDF] la lecture active pdf