Conception et exécution des tests I

Description

Compréhension des processus et des documents utilisés dans la planification et la conception de tests ainsi que dans le processus d’exécution de tests dans le cycle du développement d’un produit logiciel; élaboration de cas de tests efficaces, application de cas de tests et rapport des résultats obtenus.

Objectifs

  • Comprendre les notions de base liées à la planification et à la conception de tests sur des produits logiciels
    • Décrire les processus proposés pour les différents niveaux et types de tests
    • Expliquer l’importance de documenter le processus de conception de tests
    • Décrire les différents éléments d’un plan de tests élaboré dans le but de vérifier la qualité d’un produit logiciel
    • Décrire les sources permettant de définir le plan de tests
    • Expliquer les différents niveaux d’intégrité et leur importance lors de la rédaction du plan de tests
    • Distinguer les techniques de conception de tests de logiciels basés sur la spécification ou sur la structure
    • Distinguer plan de tests, stratégie de tests, scénario de tests, cas de tests et script de tests
    • Décrire les principales stratégies de tests
    • Expliquer l’importance de sélectionner la bonne stratégie
    • Expliquer les facteurs de risques à considérer lors de la planification des tests
  • Élaborer des cas de tests efficaces
    • Démontrer la congruence des informations entre les documents contractuels et le plan de tests
    • Circonscrire les exigences, les activités, les ressources et les méthodes de collecte proposées dans le plan de tests
    • Expliquer les conditions de tests en fonction de l’analyse des objets de tests, de la structure de l’application et du système
    • Expliquer les environnements et les données de tests nécessaires à l’exécution des tests
    • Circonscrire les paramètres qui permettront de contrôler les activités de tests
    • Estimer la durée et les ressources requises pour exécuter chaque cas de tests
    • Définir le niveau du cas de tests permettant d’éviter la duplication du travail
    • Rédiger des cas de tests qui répondent aux objectifs de la vérification
    • Vérifier la traçabilité bidirectionnelle entre bases de tests et cas de tests
    • Exécuter les cas de tests manuellement ou à l’aide d’outils, en suivant les procédures
    • Utiliser des outils libres « Open Source »
    • Rédiger des rapports afin de communiquer les résultats obtenus
    • Analyser les divergences entre les résultats obtenus et les résultats attendus afin d’en établir la cause
    • Répéter les activités de tests à la suite d’actions prises pour chaque divergence
  • Comprendre le processus d’exécution de tests dans le cycle de vie du logiciel
    • Expliquer les différentes étapes du processus d’exécution de tests
    • Expliquer le rôle et les tâches précises du testeur dans ce processus
    • Décrire les paramètres définissant les conditions dans lesquelles seront exécutés les cas de tests
    • Décrire les mesures de test et les mesures de contrôle du test en fonction du contexte
  • Comprendre le contenu du rapport des résultats
    • Expliquer le but du rapport de synthèse
    • Décrire le contenu du rapport de synthèse des résultats obtenus 
  • Appliquer les tâches attendues du testeur dans le processus d’exécution de tests
    • Prendre conscience des objectifs et des paramètres de chacun des tests à effectuer
    • Créer des blocs de tests à l'aide des procédures et des cas de tests
    • Vérifier la traçabilité bidirectionnelle entre bases de tests et cas de tests
    • Exécuter les cas de tests manuellement ou à l’aide d’outils, en suivant les procédures
    • Rédiger des rapports afin de communiquer les résultats obtenus
    • Analyser les divergences entre les résultats obtenus et les résultats attendus afin d’en établir la cause
    • Répéter les activités de tests à la suite d’actions prises pour chaque divergence

Aperçu du contenu

  • Planification et conception de tests sur les produits logiciels
  • Processus de conception en fonction des niveaux et des types de tests
  • Importance de la documentation dans le processus de conception
  • Plan de tests : étendue, approche, ressources et planification des activités de test prévues
  • Documentation contractuelle : contrats et avenants, cahiers de clauses techniques, cahiers d’appels d’offres, etc. 
  • Niveaux d’intégrité définis par les normes
  • Techniques de conception de tests de logiciels basés sur la spécification : partition d’équivalence; méthode de classification arborescente; analyse de la valeur limite; test de transition d’état; test par tables de décision; graphique de cause à effet; test de syntaxe; test de scénarios; estimation d’erreur; test aléatoire
  • Techniques de conception de tests de logiciels basés sur la structure : test des instructions; test des branches; test des décisions, test des conditions; test de conditions de branchement; test de conditions de branchement combinées; test de couverture des conditions-décisions modifiées; test de flux de données
  • Stratégies de tests : analytique, orientée modèle, méthodique, appuyée sur un processus ou une norme, dynamique, consultative ou dirigée, aversion à la régression
  • Sélection de la stratégie de tests
  • Facteurs de risques : compétences, objectifs, règlements, produits et considérations d’affaires
  • Extraction d’informations provenant du plan de test et de la documentation contractuelle
  • Identification des exigences, des activités, des ressources et des méthodes de collecte
  • Conditions d’exécution avant et après les tests
  • Résultats attendus pour chacun des tests
  • Environnement et données nécessaires à l’exécution des tests
  • Contrôle des activités
  • Estimation de la durée, des ressources requises
  • Niveau de cas de tests
  • Rédaction de cas de tests
  • Processus d’exécution de tests
  • Rôle des intervenants dans le processus
  • Tâches attendues du testeur dans le processus
  • Création de cas de tests ou de blocs de cas de tests en fonction des conditions et des objectifs
  • Mesures de test et mesures de contrôle du test 
  • Implémentation et exécution de cas de tests
  • Analyse des résultats
  • Classification des défauts
  • Rapport des défauts