0% ont trouvé ce document utile (0 vote)
9 vues36 pages

Gestion et Stratégies des Tests Logiciels

Le document traite de la gestion de la qualité logicielle, en se concentrant sur les processus d'assurance qualité, de vérification et validation, ainsi que sur l'importance des tests logiciels. Il définit les tests comme un moyen de valider et vérifier la conformité d'un logiciel aux spécifications, tout en identifiant les défauts. Le document présente également des principes de test, des vocabulaire essentiel et des étapes pour une campagne de tests efficace.

Transféré par

S2Bros
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
9 vues36 pages

Gestion et Stratégies des Tests Logiciels

Le document traite de la gestion de la qualité logicielle, en se concentrant sur les processus d'assurance qualité, de vérification et validation, ainsi que sur l'importance des tests logiciels. Il définit les tests comme un moyen de valider et vérifier la conformité d'un logiciel aux spécifications, tout en identifiant les défauts. Le document présente également des principes de test, des vocabulaire essentiel et des étapes pour une campagne de tests efficace.

Transféré par

S2Bros
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

24/05/2025

UNIVERSITE MOHAMMED V – Rabat


ECOLE MOHAMMADIA D’INGENIEURS
Filière Génie Informatique

Tests Logiciels :
Démarche ,
référentiels

Asmaâ Retbi/[Link]@[Link]
2024-2025

PARTIE
PARTIEI :I I:NTRODUCTION
RAPPEL QUALITÉ LOGICIELLE

Gestion de la qualité logicielle

La gestion de la qualité logicielle est définie dans la norme ISO 12207 [ISO 08a]
qui décrit les processus suivants:
 l’assurance qualité logicielle (AQL): fournir l'assurance que les produits du
travail et les activités (ou les composants de processus) d’un processus ou d’un
projet sont conformes à leurs exigences spécifiées et satisfont aux plans établis.
 la vérification et validation (V&V): s'assurer que la qualité planifiée dans le
logiciel est mise en œuvre et que le logiciel répond aux exigences fonctionnelles
et non fonctionnelles des utilisateurs
 la revue et l’audit: maintenir avec le client une perception commune de
l’avancement vis-à-vis des objectifs du contrat
 la résolution des problèmes :

Cours V&V 2

1
24/05/2025

PARTIE
PARTIEI :I I:NTRODUCTION
RAPPEL QUALITÉ
AU G ÉNIE LOGICIEL
LOGICIELLE

Types de V&V

Cours V&V 3

PARTIE II : TESTS

Définition

 Les tests sont le procédé de validation et de vérification d’un

logiciel

 Les tests assurent que le produit est conforme à ses spécifications


 Les tests assurent que le produit fait ce qu’on attend de lui
 Les tests identifient les bugs, les erreurs ou les défaillances les plus
importantes dans le but de les réparer

 Une défaillance importante est celle qui affecte l’utilisabilité du


produit
Cours V&V 4

2
24/05/2025

PARTIE II : TESTS

Test - Questions

Question 1 : Qu’est-ce que ça veux dire ”tester un logiciel” ?

Question 2 : Y a-t-il plusieurs types de tests ?

Question 3 : Y a-t-il une alternative aux tests ?

Question 4 : Quel est le coût du test d’un logiciel ?

Cours V&V 5

PARTIE II : TESTS

Test – Définition 1

Cours V&V 6

3
24/05/2025

PARTIE II : TESTS

Test – Définition 2

Cours V&V 7

PARTIE II : TESTS

Test – Définition 3

Le test d’un logiciel est une activité qui fait partie du processus de
développement. Il est mené selon les règles de l’assurance de la qualité et
débute une fois que l’activité de programmation est terminée. Il s’intéresse
aussi bien au code source qu’au comportement du logiciel. Son objectif
consiste à minimiser les chances d’apparitions d’une anomalie avec des
moyens automatiques ou manuels qui visent à détecter aussi bien les
diverses anomalies possibles que les éventuels défauts qui les
provoqueraient.

Cours V&V 8

4
24/05/2025

PARTIE II : TESTS

Test – Définition ISTQB

Testing is the process consisting of all lifecycle activities, both


static and dynamic, concerned with planning, preparation
and evaluation of software products and related work
products to determine that they satisfy specified
requirements, to demonstrate that they are fit for purpose
and to detect defects

Cours V&V 9

PARTIE II : TESTS

Pourquoi tester ?

Assurer la qualité du Réduire les coûts de


produit livré: corrections:
Réduire les défauts et Identifier et résoudre
« Les testeurs sont garantir une les défauts le plus tôt
l’Assurance expérience utilisateur possible
indispensable des optimale
projets : ils couvrent Accélérer les mises en Améliorer la confiance
les risques, production: des utilisateurs:
préviennent les Diminuer les délais Offrir une stabilité et
défaillances et grâce à une performance qui
garantissent la l’automatisation et une répond aux attentes
qualité » meilleure organisation des utilisateurs
des tests

Cours V&V 10

5
24/05/2025

PARTIE II : TESTS

Pourquoi tester ?

Quelques métriques:

Une stratégie de tests Intégrer un Test lead et


anticipée peut économiser planifier les tests en amont
20 à 30% des coûts de réduit les temps de recette
corrections post- de 15 à 25%
production

Défauts en production
réduits de 50 à 70% grâce
à tests rigoureux.

Cours V&V 11

PARTIE II : TESTS

Principes ISTQB de base

Principe 1 Les tests montrent la présence de défauts, et non leur


absence.
Principe 2 Les tests exhaustifs sont impossibles.
Principe 3 Les tests précoces permettent de gagner du temps et de
l'argent –Tester tôt et souvent « Shift left testing »
Principe 4 Les défauts se regroupent.
Principe 5 Attention au paradoxe des pesticides
Principe 6 Les tests dépendent du contexte.
Principe 7 L'absence d'erreurs est une illusion.

Cours V&V 12

6
24/05/2025

PARTIE II : TESTS

Vocabulaire indispensable

 Recette : Activité qui consiste à réaliser des tests sur une application, afin de vérifier
son bon fonctionnement
 Stratégie de recette : Activité qui consiste à mettre en place une stratégie afin
d’optimiser les ressources utilisées pour tester une application
 Plan de test Document de référence, créé au début d’une phase de test, qui regroupe
la stratégie de recette ainsi que la liste des cas de tests à exécuter
 Campagne de test phase projet, consistant à sélectionner un certain nombre de cas
de tests et à les exécuter avec des ressources conformément à la stratégie de recette..
Un cas de test Enchainement d’actions ayant pour objectif de vérifier le bon
fonctionnement des fonctionnalités d’une application.
 Un script de test est un mécanisme en charge d’exécuter les cas de tests qui ont été
définis pour le logiciel sous test, et de recueillir les résultats

Cours V&V 13

PARTIE II : TESTS

Vocabulaire indispensable

 Les données de test ou jeux de données associent à chaque entrée d’un programme
une valeur choisie dans son domaine de définition, ceci dans l’optique d’exercer un
scénario de test.
 Bilan de campagne Tableau de bord permettant de connaitre le nombre de test
réalisés au cours d’une campagne, le résultat des tests, le nombre d’anomalies
rencontrées……. Le bilan de la campagne permet d’avoir une vision de la qualité de
l’application livrée.
 Anomalie comportement d’une application qui n’est pas conforme au comportement
attendu (Ticket d’anomalie).

Cours V&V 14

7
24/05/2025

PARTIE II : TESTS

Test – Processus/Etapes
Un processus de test se compose des principaux groupes d'activités
suivants :
 Planification des tests => Plan de test : planning du test +
environnement de test + types de test + niveau de test, etc.
 Suivi et contrôle des tests : étape qui se déroule tout au long du cycle de
test TMT Test Managment Tool
 Analyse de test : identifier Périmètre de test + étudier « Quoi tester ?»
 Conception des tests => Cas de test + Scénario de test
 Implémentation des tests => Script/code/Logiciel de test
 Exécution des tests => Rapport de test
 Clôture des tests => Bilan de test
Cours V&V 15

PARTIE II : TESTS

Pré-requis des tests

1. La conception des tests :


– Couverture de tests
– Cahier des tests ou cahier de recette
– Jeux de données
2. Matériel
– Terminaux de tests : PC, badge, imprimantes, etc.
– Environnement de tests
– Le ou les logiciels à tester
– Les logiciels nécessaires
3. Organisation :
– Les acteurs qui interviennent dans le processus des tests
– Procédures : gestion de versions logicielles, la gestion des environnements, gestion des
anomalies
– Gouvernance
– Planification des travaux

Cours V&V 16

8
24/05/2025

PARTIE II : TESTS

Stratégie de test

Cours V&V 17

PARTIE II : TESTS

Le plan des tests

Cours V&V 18

9
24/05/2025

PARTIE II : TESTS

Le plan des tests

Cours V&V 19

PARTIE II : TESTS

Le plan des tests

Cours V&V 20

10
24/05/2025

PARTIE II : TESTS

Le plan des tests

LIVRABLES attendus du cours

Cours V&V 21

PARTIE II : TESTS

Plan de tests: Criticité des exigences

Cours V&V 22

11
24/05/2025

PARTIE II : TESTS

Priorisation des tests

NB: Exemplaire d’un plan de test unitaire

Cours V&V 23

PARTIE II : TESTS

Cas des tests

Définition d’un cas de test : « Un ensemble de conditions préalables, de données d’entrée,


d’actions, de résultats attendus et de post-conditions, élaboré sur la base des conditions
de test »
« source ISTQB »
Le cas de test se compose de :
1. Nom de test = qui doit préciser le test et son objectif ex: FT01CT01
2. Pas de test = les actions que va réaliser le testeur
3. Les données = nécessaires à la réalisation du cas de test (identifiant et mot de passe) +
qui doivent être générer ou récolter avant les tests
4. Résultat attendu du test =

Cours V&V 24

12
24/05/2025

PARTIE II : TESTS

Cas des tests

Comment formaliser ses cas de test ?


• Nombreux outils = fichier excel (pas suffisant + PB) : exemple cas de tests
• Xray, zephyr, Hp quality center, IBM jazz , TestRail, TestLink
Comment créer un cas de test ? Pré-requis
• Documents de spécification et de conception
• Structure ou template du cas de test
Conseils pour bien rédiger les cas de test :
• Maitriser l’objectif du cas de test
• Faciliter la compréhension du cas de test
• S’assurer tjrs que le cas de test est pertinent

Cours V&V 25

PARTIE II : TESTS

Campagne de tests

Définition d’une campagne de test : « ensemble de tests à réaliser avec des ressources
imparties»
« source ISTQB »
Créer une campagne de test
1. Etudier = les besoins des utilisateurs, la valeur commerciale apportées, les ressources
disponibles, les types de test à réaliser  déterminer priorités et stratégie de recette
2. Réaliser le découpage en fonctionnalité (parcours utilisateur)
3. Répartir les charges de travail (compétences, absence, présence)
4. Définir les types de tests : nouvelle fonctionnalité, test de non régression, ….

Cours V&V 26

13
24/05/2025

PARTIE II : TESTS

Campagne de tests
Conseils pour créer campagne de test :
• Objectif clairement identifié
• Découpage doit répondre à la priorité des cas de tests
• Test de non régression TNR intégrés er exécutés après tests de validation
Les phases d’une campagne de test :
• Conception : tests à exécuter, priorités, conditions, validation ou non régression
• Préparation : Jeux de données, outil de gestion de test, environnement, matériel,
logiciel
• Exécution : dérouler les tests et remonter les anomalies, preuve de tests, gestion des
anomalies
• Bilan : PV de recette, synthèse des résultats, indice de confiance, qualité de
l’application
• Clôture : archiver les résultats de campagne, jeux de données et bilans de tests
Cours V&V 27

PARTIE II : TESTS

Campagne de tests

Planifier la campagne de tests dans le cadre d’un cycle SCRUM:


1. Elaboration stratégie et pré-requis = étape Product backlog et ajustés au cours de
chaque sprint
2. Préparation des tests = sprint N-1
3. Exécution = sprint N
4. Bilan = fin sprint N – début Sprint N+1

Cours V&V 28

14
24/05/2025

PARTIE II : TESTS

Processus simplifié d’un test : Synthèse

Cours V&V 29

PARTIE II : TESTS

Objectifs des tests

Cours V&V 30

15
24/05/2025

PARTIE II : TESTS

Objectifs des tests

Cours V&V 31

PARTIE II : TESTS

Portée des tests

Cours V&V 32

16
24/05/2025

PARTIE II : TESTS

La réalité des tests

Cours V&V 33

PARTIE II : TESTS

Importance des Tests

Cours V&V 34

17
24/05/2025

PARTIE II : TESTS

Comment on teste ?

Cours V&V 35

PARTIE II : TESTS

Types de tests

Cours V&V 36

18
24/05/2025

PARTIE II : TESTS

Types de tests

Ou testeur
ou Tests fonctionnels fonctionnel

ou Tests unitaires

Cours V&V 37

PARTIE II : TESTS

Comparaison entre les tests

Cours V&V 38

19
24/05/2025

PARTIE II : TESTS

Classification des tests (1)

Cours V&V 39

PARTIE II : TESTS

Classification des tests (2)

Cours V&V 40

20
24/05/2025

PARTIE II : TESTS

Types de Tests logiciels

Cours V&V 41

PARTIE II : TESTS

Types de Tests logiciels

Cours V&V 42

21
24/05/2025

PARTIE II : TESTS

Tests unitaires

 Vérifier le comportement d’une fonctionnalité au regard des exigences

 Se prémunir de régression lors de :

 Correction d’anomalies

 Evolutions fonctionnels

 Montée de socle technique

 Refactoring

Cours V&V 43

PARTIE II : TESTS
Stratégie de mise en œuvre des Tests
unitaires

 Tester en priorité :

 Le code complexe

 Les corrections de bugs

 Le code sensible (souvent amené à changer)

 Tester les cas limites

Cours V&V 44

22
24/05/2025

PARTIE II : TESTS

Tests fonctionnels

En bref,
on cherche à savoir si toutes les fonctionnalités requises sont
présentes et correctes

Cours V&V 45

PARTIE II : TESTS

Tests d’intégration

Cours V&V 46

23
24/05/2025

PARTIE II : TESTS

Tests système

Cours V&V 47

PARTIE II : TESTS

Tests système

Cours V&V 48

24
24/05/2025

PARTIE II : TESTS

Tests d’acceptation

Cours V&V 49

PARTIE II : TESTS

Tests de régression

Cours V&V 50

25
24/05/2025

PARTIE II : TESTS

Bêta-tests

Cours V&V 51

PARTIE III: TEST ET AGILITÉ : TDD

Test Driven Development : Principe

Cours V&V 52

26
24/05/2025

PARTIE III: TEST ET AGILITÉ : TDD


Test Driven Development : Cycle de
développement

Cours V&V 53

PARTIE III: TEST ET AGILITÉ : TDD

Test Driven Development : Avantages

Les tests unitaires sont réellement écrits

La satisfaction du développeur permet d'obtenir un code plus cohérent

Clarification des détails de l'interface et du comportement

Vérification démontrable, répétable et automatisé

Non présence de régression

Cours V&V 54

27
24/05/2025

PARTIE II : TESTS

Difficultés

Cours V&V 55

PARTIE II : TESTS

Difficultés

Cours V&V 56

28
24/05/2025

PARTIE II : TESTS

Quand arrêter les tests ?

Cours V&V 57

PARTIE II : TESTS

Quand arrêter les tests ? En bref

Quand s’arrêter de tester :

 Si toutes les fonctionnalités critiques ne remontent aucun dysfonctionnement

 Réaliser les arbitrages

 Pourcentage acceptable d’anomalies

 Couverture de test adéquate

MAIS jamais arrêter pour manque de temps ou de budget <- manque de cadrage et

d’expérience

Cours V&V 58

29
24/05/2025

PARTIE II : TESTS

Gestion des anomalies

Qu’est ce qu’une anomalie :


« Toute condition qui dévie des attentes basées sur les exigences de spécifications,
documents de conception, documents utilisateurs, standards etc, ou des perceptions ou
expériences de quelqu’un. Les anomalies peuvent être trouvées pendant, mais pas
uniquement, les revues, tests, analyses, compilations ou utilisation des produits logiciels
ou de la documentation applicable »

« Source ISTQB »

Cours V&V 59

PARTIE II : TESTS

Gestion des anomalies

Les types de défauts d’une fonctionnalité :

• Ce qui empêche l’accès à une fonctionnalité

• Ce qui affecte les résultats d’une fonctionnalité

• Ce qui bloque l’utilisateur dans son parcours

• Ce qui génère des régressions et des incompatibilités

• Ce qui génère des insuffisances de performance

Cours V&V 60

30
24/05/2025

PARTIE II : TESTS

Les catégories d’anomalies

• Les erreurs = se rencontrent en amont du développement qui survient d’une mauvaise

compréhension du besoin et elle présente dans le descriptif du besoin (cahier de

charge)

• Défauts = pendant le développement et dû à 2 facteurs une exigence oubliée ou

mauvais développement (code). Un défaut n’est pas toujours critique et ne provoque

pas une défaillance.

• Défaillance = tout dysfonctionnement qui apparait lors de l’exécution du code et qui

peut avoir un impact direct sur l’expérience utilisateur

Cours V&V 61

PARTIE II : TESTS

Comment formaliser une anomalie :

Comment formaliser une anomalie :

• Définir le parcours utilisateur, le jeux de données utilisées, le résultat obtenu qui diffère

du résultat attendu.

• Prendre le temps de communiquer oralement l’anomalie aux développeurs concernés.

(si anomalie complexe)

• Ne pas imposer une solution de correction aux développeurs (chacun son métier)

Cours V&V 62

31
24/05/2025

PARTIE II : TESTS

Comment formaliser une anomalie :

2- Le contexte de l’anomalie

• Titre de l’anomalie : Problème au niveau de l’authentification

• Contexte : Date/environnement/Version/plan de test/Cas de test

• Constaté : exemple: Erreur 404 (avec une capture d’écran)

• Parcours qui est en cause de l’anomalie

• Rappel du comportement attendu

Cours V&V 63

PARTIE II : TESTS

3- Qualification de l’anomalie : quels


critères?
• Attribuer une criticité : bloquante, majeure, mineure,

• Déterminer la priorité de correction : Immédiate, court terme, planifiée, reportée

• Fréquence d’apparition d’une anomalie = Systématique, Fréquent, Occasionnel, Rare

• Donner un statut : à traiter, en cours, résolue

NB: Il est essentiel de formaliser tout ceci dans une fiche ou utiliser un outil Jira, GitLab

+ Elaborer la typologie de criticité des tests au moment de la rédaction du plan de test

avec toutes les parties prenantes

Cours V&V 64

32
24/05/2025

PARTIE II : TESTS

Arbitrage de l’anomalie : Comment ?

L’arbitrage des anomalies est réalisé à partir des éléments suivants :

• Criticité de l’anomalie

• Priorité de la correction

• Estimation du nombre d’heures ou de jours nécessaires à la correction : fort (>

5jours), moyen (entre 1 et 5 jours), Faible (< 1 jour).

• Capacité de travail réservée pour la correction des anomalies

Cours V&V 65

PARTIE II : TESTS

Arbitrage de l’anomalie : Quand ?

• La stratégie d’arbitrage des anomalies est donc dépendante de la stratégie de

livraison du projet

• Réaliser l’arbitrage d’anomalie pendant le comité de recette/revue de sprint:

 Présentation des nouvelles anomalies détectées

 La sélection des anomalies à corriger

Cours V&V 66

33
24/05/2025

PARTIE III : TESTS ET AGILITÉ

Bonnes pratiques du test en agilité

Préparer sa stratégie en amont de chaque sprint (6W)

• Pourquoi (Why) : pourquoi doit-on tester et où se trouvent le plus de risques ?

• Quoi (What) : que doit-on tester? en répondant à la question précédent

• Quand (When) : quand doit-on tester ? Le plus tôt possible!

• Comment (hoW) : équipe, organisation, outils?

• Qui (Who): qui doit tester ?

• Où (Where): Environnement?

Cours V&V 67

PARTIE III : TESTS ET AGILITÉ

Bonnes pratiques du test en agilité

Appliquer les bons principes de testing

• Tester à plusieurs

• Limiter et prioriser les tests

• Comprendre le produit et les utilisateurs

• Automatiser

• Mettre en place des indicateurs pour un retour réel de l’utilisation

• Communiquer un maximum

• Adapter ses stratégies de test à chaque contexte

• Définir un mindset et l’insuffler au reste de l’équipe

Cours V&V 68

34
24/05/2025

PARTIE II : TESTS

Facteurs clé de succès

1. Maitrise du fonctionnel : permet de concevoir des tests adaptés + comprendre

l’origine du bug

2. Passer du temps à concevoir les tests en amont du développement : anticiper les

besoins des tests et avoir une bonne couverture de test

3. Les relations avec les équipes (MOA et Dev): l’humain est au cœur des facteurs

clé de succès de tout projet. Collaboration et communication avec les ≠ équipes

réussite du projet

4. Se concentrer sur les tests à forte valeur ajoutée :


Cours V&V 69

PARTIE II : TESTS

Axes d’amélioration identifiés

1. Automatisation : soulager les testeurs sur les activités à faible valeur ajoutée +

réaliser davantage des tests à moindre coût.

2. Adaptation à l’Agilité : intégration continue + gestion des releases de plus en

plus fréquente ?????

3. Intégration des besoins des tests dès la conception des produits

4. Industrialisation des activités de test plus en amont du cycle de vie projet

5. Diminution du coût : jusqu’au tester ? Externaliser les tests ? ……..

6. Manque des données et leur qualité


Cours V&V 70

35
24/05/2025

PARTIE II : TESTS

IA et Big data au service des tests

1. Priorité à la performance pour le développement logiciel : implique la nécessité

de l’automatisations des activités de tests

2. Donner de l’intelligence aux tests: IA automatise la démarche AQ

3. En exploitant le machine learning : meilleure détection des défauts par

l’analyse des causes et des défaillance + prévision éventuelle des défauts

FIN DU COURS

Cours V&V 71

36

Vous aimerez peut-être aussi