Mémoire de maîtrise (2009)
Résumé
Le test de logiciel a traditionnellement été l'une des principales techniques contribuant à la haute fiabilité et à la qualité des logiciels. Les activités de test consomment environ 50% des ressources de développement de logiciel, ainsi toute technique visant à réduire les coûts du test est susceptible de réduire le coût total de développement du logiciel. Le test complet d'un logiciel est souvent impossible à réaliser à cause des exécutions infinies nécessaires pour effectuer le test et le prix élevé par rapport aux limitations du budget. Les systèmes informatiques de fiabilité élevée sont souvent des systèmes appartenant aux domaines réglementés tels que le domaine aérospatial et le domaine médical. Dans de tels domaines, l'assurance de la qualité et les activités de test de logiciel sont imposées par la loi ou exigées par des normes obligatoires, telles que le DO-178B, DO-254, EN-50128, IEEE/EIA 12207, ou ISO/IEC i2207. Ces normes et règlements imposent normalement des activités de vérification et de validation, ainsi qu'ils spécifient les critères de test exigés. Proposé par la NASA en 1994, la couverture modifiée des décisions et des conditions (MC/DC) est une stratégie de test requise, entre autres, par le RTCA DO-178B. MC/DC est un critère de test en boîte blanche qui vise à prouver que chacune des clauses (expression booléenne ne contenant aucun opérateur logique tel que le z < x + y) impliquée dans une décision influence correctement la valeur de cette décision. Le critère MC/DC englobe d'autres critères structurels bien connus tels que la couverture des instructions et des décisions. Le travail présenté dans se mémoire applique des techniques d'optimisation de la recherche au problème du test. Nous explorons la façon d'intégrer la distance des branches, les dépendances de contrôles et les dépendances de données dans la recherche pour mieux la guider. Le but serait la génération automatique des données de test pour le critère MC/DC appliqué au niveau des méthodes. Notre approche est organisée en deux étapes. D'abord, pour chacune des décisions dans le code à tester, nous calculons les ensembles des cas de test nécessaire pour couvrir le critère MC/DC pour cette décision. Cet ensemble de cas de test formera alors un ensemble d'objectifs pour la recherche. Dans la deuxième étape, nous appliquons des stratégies de recherche méta-heuristiques pour produire des données de test, assignant des valeurs booléennes vraies et fausses aux clauses des décisions de sorte qu'un objectif de test calculé dans la première étape soit satisfait. Nous proposons une nouvelle fonction de coût qui sert à guider efficacement la recherche pour la génération des données test pour le critère MC/DC. En particulier nous nous inspirons de la méthode d'enchaînement qui intègre les dépendances de données dans la fonction coût. Nous avons étendu l'algorithme proposé par McMinn pour la fonction de la distance des branches, en l'adaptant au critère MC/DC.
Statistiques
Total des téléchargements à partir de PolyPublie
Téléchargements par année
Provenance des téléchargements
