To see the other types of publications on this topic, follow the link: Test de logiciels.

Dissertations / Theses on the topic 'Test de logiciels'

Create a spot-on reference in APA, MLA, Chicago, Harvard, and other styles

Select a source type:

Consult the top 50 dissertations / theses for your research on the topic 'Test de logiciels.'

Next to every source in the list of references, there is an 'Add to bibliography' button. Press on it, and we will generate automatically the bibliographic reference to the chosen work in the citation style you need: APA, MLA, Harvard, Chicago, Vancouver, etc.

You can also download the full text of the academic publication as pdf and read online its abstract whenever available in the metadata.

Browse dissertations / theses on a wide variety of disciplines and organise your bibliography correctly.

1

Bailly, Arnaud Clerbout Mireille Ryl Isabelle. "Test & validation de composants logiciels." Villeneuve d'Ascq : Université des sciences et technologies de Lille, 2007. https://iris.univ-lille1.fr/dspace/handle/1908/515.

Full text
APA, Harvard, Vancouver, ISO, and other styles
2

Bailly, Arnaud. "Test & validation de composants logiciels." Lille 1, 2005. https://pepite-depot.univ-lille.fr/LIBRE/Th_Num/2005/50376-2005-Bailly.pdf.

Full text
Abstract:
Les producteurs de logiciels et plus particulièrement les prestataires de services doivent faire face aux exigences de plus en plus fortes des utilisateurs pour obtenir des logiciels de meilleure qualité qui remplissent un nombre de fonctions de plus en plus grande, à un coût réduit. Cette thèse se propose de contribuer à la résolution de cette équation en soulignant l'importance de structurer les applications dans une architecture à base de composants et d'industrialiser le processus de développement. Pour ce faire, nous proposons un modèle de composants permettant l'expression de contrats comportementaux, modèle doté d'une sémantique formelle sous la forme de langages de traces liés à une catégorie particulière d'automates, intitulé FIDL. Ce modèle nous permet de définir des outils théoriquement bien fondés pour la validation et la vérification de composants concrets. En particulier, nous détaillons la mise en oeuvre d'une méthode de test de conformité compositionnelle pour la validation de composants.
APA, Harvard, Vancouver, ISO, and other styles
3

Mouy, Patricia. "Automatisation du test de tous-les-chemins en présence d'appels de fonction." Evry-Val d'Essonne, 2007. http://www.biblio.univ-evry.fr/theses/2007/2007EVRY0033.pdf.

Full text
Abstract:
Le test structurel est d'habitude limité aux tests unitaires et est basé sur une définition précise de la couverture du code source. Le critère tous-les-chemins est reconnu comme offrant un haut niveau de confiance. Pour limiter l'explosion combinatoire des chemins, nous abstrayons les fonctions appelées par leur spécification. Nous incorporons les informations fonctionnelles des fonctions appelées dans les informations structurelles de la fonction sous test données par le CFG. Cette représentation combinant des descriptions fonctionnelles et structurelles nous permet de caractériser des critères de sélection de test assurant la couverture du code source de la fonction sous test. On propose deux nouveaux critères. Le premier correspond à la couverture de tous les chemins de cette nouvelle représentation, y compris des chemins résultant de la description fonctionnelle des fonctions appelées. Le deuxième couvre uniquement tous les chemins faisables de la fonction sous test
Structural testing is usually restricted to unit tests and based on some clear definition of source code coverage. In particular, the all-paths criterion is recognised as offering a high level of software reliability. To limit the combinatorial explosion in the number of paths, we choose to abstract the called functions by their specification. We incorporate the functional information on the called functions within the structural information on the function under test, given as a CFG. This representation combining functional and structural descriptions allows us to characterise test selection criteria ensuring the coverage of the source code of the function under test. Two new criteria are proposed. The first one corresponds to the coverage of all the paths of this new representation, including all the paths arising from the functional description of the called functions. The second one covers all the feasible paths of the function under test only
APA, Harvard, Vancouver, ISO, and other styles
4

Awedikian, Roy Yannou Bernard. "Qualité de la conception de tests logiciels plate-forme de conception et processus de test /." S. l. : Ecole centrale de Paris, 2009. http://theses.abes.fr/2009ECAP0007.

Full text
APA, Harvard, Vancouver, ISO, and other styles
5

Mottu, Jean-Marie Le Traon Yves. "Oracles et qualification du test de transformations de modèles." Rennes : [s.n.], 2008. ftp://ftp.irisa.fr/techreports/theses/2008/mottu.pdf.

Full text
APA, Harvard, Vancouver, ISO, and other styles
6

Pickin, Simon. "Test des composants logiciels pour les télécommunications." Rennes 1, 2003. http://www.theses.fr/2003REN10034.

Full text
Abstract:
Nous affirmons le besoin d'un langage intégré dans UML pour décrire des test fonctionnels de composants, et nous proposons un tel langage, TeLa, fondé sur les diagrammes de séquence UML, où l'architecture de test se décrit avec des diagrammes de composant UML. Nous formalisons la base de la sémantique non entrelacée de TeLa, et les notions de déterminisme / contrôlabilité, complétude en entrée, verdicts implicite / explicite et alternative par défaut. La sémantique par projection sur les événements du testeur permet l'usage d'une syntaxe avec lignes de vie pour le SUT. Lárchitecture de test fournit un cadre pour définir la décomposition des lignes de vie et des propriétés de composant telles que la sémantique de communication et le schéma de flôt de contrôle. Nous définissons les concepts d'une description de test bien fondée, d'un cas de test centralisable et de trois types de cas de test parallèles. Nous expérimentons l'utilisation de TeLa dans la synthèse de test avec Umlaut/TGV.
APA, Harvard, Vancouver, ISO, and other styles
7

Awedikian, Roy. "Qualité de la conception de tests logiciels : plate-forme de conception et processus de test." Phd thesis, Ecole Centrale Paris, 2009. http://tel.archives-ouvertes.fr/tel-00393847.

Full text
Abstract:
L'électronique dans les voitures devient de plus en plus complexe et représente plus de 30% du coût global d'une voiture. Par exemple, dans une BMW série 5 modèle 2008, on peut trouver jusqu'à 80 calculateurs électroniques communiquant ensemble et représentant aux alentours de 10 millions de lignes de code logiciel. Face à cette montée en complexité, les constructeurs et équipementiers électroniques de l'automobile s'intéressent de plus en plus à des méthodes efficaces de développement, vérification et validation de modules électroniques. Plus précisément, ils focalisent leurs efforts sur la partie logicielle de ces modules puisqu'elle est à l'origine de plus de 80% des problèmes détectés sur ces produits. Dans ce contexte, nous avons mené un travail de recherche dont l'objectif est de proposer une approche globale d'amélioration de la qualité des logiciels embarqués dans les véhicules. Notre recherche part d'un audit des processus et outils actuellement utilisés dans l'industrie électronique automobile. Cet audit a permis d'identifier des leviers potentiels d'amélioration de la qualité logicielle. En se basant sur les résultats de l'audit et en tenant compte de la littérature dans le domaine de la qualité logicielle, nous avons proposé une approche globale de conception de cas de test pour les produits logiciels. En effet, nous avons développé une plateforme de génération automatique de tests pour un produit logiciel. Cette plateforme consiste à modéliser les spécifications du produit logiciel pour le simuler lors de tests, à se focaliser sur les tests critiques (ayant une forte probabilité de détecter des défauts) et à piloter la génération automatique des tests par des critères de qualité ; telles que la couverture du code et de la spécification mais aussi le coût des tests. La génération de tests critiques est rendue possible par la définition de profils d'utilisation réelle par produit logiciel, ainsi que par la réutilisation des défauts et des tests capitalisés sur des anciens projets. En plus des aspects algorithmiques du test logiciel, notre approche prend en compte des aspects organisationnels tels que la gestion des connaissances et des compétences et la gestion de projet logiciel. Notre approche a été mise en œuvre sur deux cas d'étude réels d'un équipementier électronique automobile, disposant de données de tests historiques. Les résultats de nos expérimentations révèlent des gains de qualité significatifs : plus de défauts sont trouvés plus tôt et en moins de temps.
APA, Harvard, Vancouver, ISO, and other styles
8

Parissis, Ioannis. "Test de logiciels synchrones spécifiés en Lustre." Phd thesis, Université Joseph Fourier (Grenoble), 1996. http://tel.archives-ouvertes.fr/tel-00005010.

Full text
Abstract:
Ce travail s'inscrit dans le cadre des méthodes formelles et des outils pour la spécification, la programmation, la vérification et la validation des logiciels réactifs à l'aide du langage synchrone Lustre. Nous avons étendu l'environnement de développement actuel de ces logiciels en lui adjoignant des outils de validation de spécifications et de test de programmes. Nous proposons une technique de construction automatique d'un simulateur aléatoire de l'environnement externe du logiciel ainsi que d'un simulateur des comportements sûrs de ce dernier. Exécutés conjointement, ces deux simulateurs permettent, par observation, la validation des spécifications de l'environnement et des propriétés de sûreté. La simulation de l'environnement constitue également un moyen de test aléatoire du logiciel. Une variante de cette technique est le test des propriétés de sûreté. Ce type de test favorise l'exécution des comportements de l'environnement du logiciel qui peuvent mettre en évidence avec une plus grande probabilité des violations des propriétés de sûreté. Enfin, nous définissons des critères de couverture pour le test structurel en s'appuyant sur le réseau d'opérateurs associé à un programme Lustre. Les conditions d'exécution des composants du réseau satisfaisant les critères sont calculées automatiquement ce qui permet la génération automatique de données de test ainsi que la mesure du taux de couverture obtenu. Toutes ces techniques sont formellement définies. Une illustration de leur application sur un exemple de logiciel synchrone que nous avons développé à cet effet complète notre étude.
APA, Harvard, Vancouver, ISO, and other styles
9

Le, Traon Yves. "Contribution au test de logiciels orientés-objet." [S.l.] : [s.n.], 2004. http://www.irisa.fr/centredoc/publis/HDR/2004/irisapublication.2005-08-03.6913694729.

Full text
APA, Harvard, Vancouver, ISO, and other styles
10

Seljimi, Besnik. "Test de logiciels synchrones avec la PLC." Phd thesis, Université Joseph Fourier (Grenoble), 2009. http://tel.archives-ouvertes.fr/tel-00408225.

Full text
Abstract:
Ce travail porte sur le test fonctionnel, basé sur les spécifications et complètement automatisé des logiciels synchrones. Nous proposons une extension des techniques de test proposées par l'outil Lutess afin de prendre en compte des logiciels qui comportent des entrées/sorties numériques. La génération de données de test est abordée en s'appuyant sur les techniques de programmation par contraintes.

Nous avons redéfini les méthodes de guidage de la génération afin de les adapter à ce nouveau contexte numérique. Ainsi, nous proposons, en plus de la génération aléatoire respectant les propriétés invariantes de l'environnement, le guidage du test basé sur des probabilités conditionnelles ou sur des propriétés de sûreté. Des connaissances partielles sur le logiciel, que nous appelons hypothèses de test, peuvent être intégrées dans le processus de génération et contribuer à l'amélioration du pouvoir de détection de fautes du guidage par propriétés de sûreté. Enfin, nous permettons l'utilisation conjointe de plusieurs techniques de guidage dans une même spécification.

Une implémentation de ces méthodes de test a été réalisée dans une nouvelle version de l'outil, que nous appelons Lutess V2. L'applicabilité de ces méthodes dans un contexte plus réaliste a été évaluée sur une étude de cas significative d'un contrôleur de niveau d'eau dans une chaudière.
APA, Harvard, Vancouver, ISO, and other styles
11

Seljimi, Besnik. "Test de logiciels synchrones avec la PLC." Phd thesis, Grenoble 1, 2009. http://www.theses.fr/2009GRE10120.

Full text
Abstract:
Ce travail porte sur le test fonctionnel, basé sur les spécifications et complètement automatisé des logiciels synchrones. Nous proposons une extension des techniques de test proposées par l'outil Lutess afin de prendre en compte des logiciels qui comportent des entrées/sorties numériques. La génération de données de test est abordée en s'appuyant sur les techniques de programmation par contraintes. Nous avons redéfini les méthodes de guidage de la génération afin de les adapter à ce nouveau contexte numérique. Ainsi, nous proposons, en plus de la génération aléatoire respectant les propriétés invariantes de l'environnement, le guidage du test basé sur des probabilités conditionnelles ou sur des propriétés de sûreté. Des connaissances partielles sur le logiciel, que nous appelons hypothèses de test, peuvent être intégrées dans le processus de génération et contribuer à l'amélioration du pouvoir de détection de fautes du guidage par propriétés de sûreté. Enfin, nous permettons l'utilisation conjointe de plusieurs techniques de guidage dans une même spécification. Une implémentation de ces méthodes de test a été réalisée dans une nouvelle version de l'outil, que nous appelons Lutess V2. L'applicabilité de ces méthodes dans un contexte plus réaliste a été évaluée sur une étude de cas significative d'un contrôleur de niveau d'eau dans une chaudière
This work deals with functional, specification-based and fully automated testing of synchronous software. We propose an extension of the testing techniques proposed by the Lutess tool in order to consider programs with numerical inputs/outputs. The test data generation is now based on constraint programming techniques. We have redefined the generation methods in order to adapt them in this new context. Thus, we propose, in addition to the random generation with respect to the invariant properties of the environment, test guidance based on conditional probabilities or safety properties. Partial knowledge about the software, called test hypotheses, can be integrated in the generation process and improve the fault detection ability of safety property guided testing. Finally, we make it possible to use simultaneously several guidance techniques in the same specification. An implementation of these testing methods has resulted in a new version of the tool, called Lutess V2. The applicability of these methods for testing more realistic programs has been evaluated on a significant case study of a water level controller in a steam boiler
APA, Harvard, Vancouver, ISO, and other styles
12

Chevalley, Philippe. "Approche statistique pour le test de logiciels critiques orientés-objet : expérimentation sur un logiciel avionique." École nationale supérieure de l'aéronautique et de l'espace (Toulouse ; 1972-2007), 2001. http://www.theses.fr/2001ESAE0018.

Full text
Abstract:
Les travaux présentés dans ce mémoire ont pour objectif de définir une stratégie appropriée pour le test de logiciels critiques orientés-objet. La stratégie de test que nous préconisons s'appuie sur la complémentarité de données de test statistique et déterministe. Les entrées de test statistiques sont générées automatiquement à partir de l'information présente dans les diagrammes d'état UML; en complément, les entrées de test déterministes ciblent des points singuliers du domaine d'entrée. Cette stratégie mixte s'intègre dans un environnement commercial de modélisation (Rose RealTime) permettant ainsi la génération automatique à la fois des entrées de test statistiques et des sorties attendues. Le pouvoir d'efficacité de cette stratégie mixte est évalué par une technique d'injection de fautes logicielles, analyse de mutation. Dans ce cadre, un outil d'analyse de mutation pour programmes Java a été développé sur les bases d'une idée originale, associant analyse syntaxique et réflexivité pour l'injection de différents types de fautes (traditionnelles et orientées-objet). Ces travaux théoriques sont illustrés sur une étude de cas industrielle du domaine avionique. Les résultats expérimentaux confirment la pertinence de l'approche élaborée et montrent son efficacité prometteuse vis-à-vis de la recherche de fautes. Ces mesures d'efficacité sont complétées par une étude comparative de l'approche proposée avec une approche déterministe utilisée expérimentalement chez Rockwell-Collins.
APA, Harvard, Vancouver, ISO, and other styles
13

Waeselynck, Hélène. "Vérification de logiciels critiques par le test statistique." Toulouse, INPT, 1993. http://www.theses.fr/1993INPT010H.

Full text
Abstract:
Les travaux presentes dans ce memoire concernent l'utilisation du test statistique en tant que technique de verification pour les logiciels critiques, c'est-a-dire presentant des contraintes de surete elevee. Le test statistique consiste a executer un programme avec des entrees aleatoires, le profil de test et le nombre d'entrees a generer etant determines a partir de criteres bases sur l'analyse structurelle ou fonctionnelle de ce programme: ce mode de generation probabiliste permet de compenser l'imperfection des criteres actuels vis-a-vis des fautes recherchees, imperfection qui les rend d'autant plus insuffisants dans le cas de logiciels critiques. Le potentiel de l'approche proposee est justifie par une etude theorique sur les causes d'echec d'un test; sa faisabilite et son efficacite sont illustrees experimentalement sur un programme issu du domaine nucleaire. Pour le test unitaire, on montre l'efficacite d'une approche combinant le test statistique structurel avec un test deterministe des valeurs aux limites. Pour le test de composants logiciels complexes, la conception du test statistique s'effectue a partir d'une specification modulaire comprenant des modeles comportementaux. Des modeles classiques sont d'abord envisages (machines a etats finis et tables de decision); puis l'approche est affinee en considerant une specification basee sur des modeles plus sophistiques: les statecharts
APA, Harvard, Vancouver, ISO, and other styles
14

KARAPOULIOS, CONSTANTINOS. "Raisonnement qualitatif applique au test evolutif des logiciels." Toulouse 3, 1999. http://www.theses.fr/1999TOU30106.

Full text
Abstract:
Ce travail se propose d'analyser le comportement dynamique d'un logiciel par des techniques de raisonnement qualitatif. Ces resultats sont ensuite utilises pour ameliorer la procedure de test. Apres avoir introduit une algebre adaptee au calcul des structures du flot des donnees dans le logiciel, on introduit le graphe qualitatif qui est l'equivalent d'un espace de phases du logiciel etudie. Les differentes proprietes algebriques et topologiques de ces graphes sont analysees afin d'introduire la notion de groupe algorithmique fondamental associe a la dynamique qualitative d'un logiciel. Dans une derniere partie on utilise les resultats de l'algorithmique qualitative pour guider un algorithme genetique dans un processus de generation automatique de donnees de test.
APA, Harvard, Vancouver, ISO, and other styles
15

Labiche, Yvan. "Contribution au test des logiciels orientés-objets : ordre de test, modèles et critères associés." Toulouse, INPT, 2000. http://www.theses.fr/2000INPT018H.

Full text
Abstract:
L'architecture particulière des logiciels orientés-objet, architecture éclatée d'objets communicants, ainsi que les caractéristiques propres à l'orienté-objet (classe, héritage, polymorphisme) conduisent à se reposer les deux questions fondamentales du test dans le cas des logiciels orientés-objet : quels sont les niveaux de test à envisager ? Quels modèles, et critères de test associés, peuvent être utilisés ? Les travaux présentés dans ce mémoire apportent des éléments de réponses à ces questions. En ce qui concerne le premier point, nous nous sommes attachés à définir un nombre de test des classes d'une application orientée-objet à partir des informations issues du dossier de conception (architecture statique). Le travail théorique a porté sur la formalisation d'un algorithme d'ordonnancement partiel des étapes de test. Cet algorithme est guidé par le souci de minimiser le nombre de "stubs" (bouchons) qu'il sera nécessaire de développer. Il est basé sur l'analyse des dépendances entre les classes (y compris le polymorphisme) et traite le cas particulier des classes abstraites. Il est concrétisé par l'outil logiciel TOONS (Testing levels generator for Object-OrieNted Software) qui fournit le graphe des étapes de test à partir de l'architecture statique des classes. Pour chaque étape de test, nous proposons ensuite des modèles permettant de définir des critères de test. Leur construction cible les relations d'héritage et de client-serveur. Elle est incrémentable de manière à pouvoir, dans une étape de test, réutiliser ce qui a été effectué dans les étapes précédentes. Ces différents travaux utilisent des informations issues des dossiers d'analyse et de conception, et peuvent donc être utilisés au plus tôt dans le processus de développement, pour permettre un retour sur la conception en vue de la testabilité. Ils sont illustrés par leur application au prototype d'un logiciel issu du domaine avionique.
APA, Harvard, Vancouver, ISO, and other styles
16

Delamare, Romain. "Analyses automatiques pour le test de programme orientés aspect." Rennes 1, 2009. ftp://ftp.irisa.fr/techreports/theses/2009/delamare.pdf.

Full text
Abstract:
La programmation orientée aspects sépare les différentes préoccupations pour améliorer la modularité et l'évolutivité. Ce paradigme introduit de nouveaux défis pour le test. Afin de proposer des solutions efficaces à ces problèmes, nous avons étudié l'utilisation d'AspectJ dans 38 projets libres. Ces observations ont révélé que les aspects sont peu utilisé, et avec précaution, et que la programmation orientée aspect diminue la testabilité en augmentant le couplage. Nous avons développé une analyse statique de l'impact des aspects sur les cas de test. Le but est de déterminer statiquement quels sont les cas de test qui sont impactés par l'introduction d'un aspect et qui doivent être modifiés pour prendre en compte les changements. Cette analyse outillée, vise à limiter le temps d'exécution des cas de test et permet au testeur de se concentrer sur les cas de test qui doivent être modifiés. Nous proposons une approche, implémentée dans un outil nommé AdviceTracer, pour tester les expressions de point de coupe séparément des greffons. Cet outil permet la définition d'un oracle spécifiquement adapté à la détection d'erreurs dans un point de coupe. Ceci permet à l'oracle de tester si un greffon a été correctement tissé, sans dépendre du comportement du greffon. Dans le cadre de cette thèse nous avons eu besoin de différentes outils d'analyse. AjMetrics est un outil qui mesure diverses métriques sur les programmes orientés aspect en utilisant un formalisme. AjMutator est un outil d'analyse de mutations de programmes orientés aspect, qui est capable d'insérer des erreurs dans les expressions de point de coupe
Aspect-oriented programming is a new paradigm that separates the different concerns to improve the modularity. This paradigm introduces new challenges for the validation. To offer effective solutions to these problems, we have studied the use of Aspect in 38 open source projects. These observations have shown that the aspects are rarely used, and with great caution, and that aspect-oriented programming reduces the testability by increasing the coupling. We have developed a static analysis of the impact of aspects on the test cases. The objective is to statically determine which test cases are impacted by the aspects and should be modified to take the changes into account. This analysis, supported by a tool, aims at reducing the execution time of the test cases and allows the tester to focus on the test cases that need to be modified. We propose an approach, implemented in a tool, AdviceTracer, to test test the pointcut descriptors separately from the advices. This tool allows the definition of oracles that are specific to the detection of faults in the pointcut descriptors. This allows the oracle to test if an advice has been correctly woven without depending on the behavior of the advice. In the context of this thesis, we have developed different analysis tools. AjMetrics is a tool which measures different metrics on aspect-oriented programs, using a formalism. AjMutator is a tool for the mutation analysis of aspect-oriented programs, which is able to insert faults in the poincut descriptors
APA, Harvard, Vancouver, ISO, and other styles
17

Do, Huy Vu. "Conception testable et test de logiciels flots de données." Grenoble INPG, 2006. http://www.theses.fr/2006INPG0107.

Full text
Abstract:
Cette thèse concerne l'étude de la testabilité des conceptions flot de données des systèmes réactifs développés à l'aide de deux environ développement SCADE et SIMULINK. La testabilité, utilisée pour estimer de manière prédictive la facilité à tester un système, est évaluée par deux mesures : la contrôlabilité et l'observabilité. Nous utilisons la technologie SATAN basée sur la théorie de l'information pour modéliser le transfert d'information dans le système. Les mesures de testabilité sont calculées à partir de la perte d'information dans le schéma d'opérateurs, où chacun des opérateurs contribuent à cette perte d'information. La perte d'information d'un opérateur est calculée soit exhaustivement sur la base de la "table de vérité" de la fonction de l'opérateur, soit de manière statistique via les résultats de simulation de l'opérateur. Notre approche a été intégrée dans un outil permettant une analyse automatique de testabilité
This work concerns the testability analysis of data-flow designs of reactive systems developed by using two development environments SCADE and SIMULINK. The testability, which is used to estimate the facility to test a system, is a combination of two measures : controllability an observability. We use the SATAN technology, which is based on the information theory, to model the transfer of information in the system. The testability measures are computed from the loss of information in the system, where each operator contributes to this loss. The loss of information of an operator can be evaluatedeither exhaustively by basing on the "truth table" of the function of the operator, or statistically by basing on the simulation results of the operator. Our approach is integrated in a tool allowing an automatic analysis of testability of graphical data-flow designs of reactive systems
APA, Harvard, Vancouver, ISO, and other styles
18

Zaraket, Hayssam. "Une méthode automatisée pour le test des grands logiciels." Mémoire, École de technologie supérieure, 2001. http://espace.etsmtl.ca/835/1/ZARAKET_Hayssam.pdf.

Full text
Abstract:
La croissance rapide de l'utilisation des systèmes informatisés dans tous les domaines donne une importance cruciale au problème des anomalies informatiques. De nos jours, les ordinateurs aident les humains dans la plupart des aspects de nos vies quotidiennes, et les applications informatiques sont rendues très puissantes et complexes. Tester une application informatique simple n'est pas une tâche très difficile, mais tester un grand logiciel ayant des millions de lignes de code est une tâche très complexe. Un grand logiciel est complexe et ses interfaces avec les systèmes externes élargissent l'ampleur des acticités de test. L'industrie informatique débourse beaucoup d'argent et de temps pour tester de tels logiciels. Elle cherche toujours de nouvelles méthodes pour épargner temps et argent nécessaires à ces tests. Dans ce mémoire nous allons aborder les difficultés rencontrées lors de test de grands logiciels et les limitations pratiques rencontrées. Nous allons aussi expliquer la nature des anomalies que nous cherchons à débusquer dans le logiciel sous test. Nous montrons comment bâtir un dictionnaire contextuel qui va nous aider dans notre méthode de test afin de trouver les anomalies. L'objectif principal de ce travail est de présenter une méthode de test pour aider les organisations qui exécutent des tests pour des grands logiciels en tant que tierce partie, c'est-à-dire, une organisation qui n'est pas responsable de la conception de logiciel. Ce qui rend le processus potentiellement complexe impliquant un grand nombre de personnes géographiquement distribuées avec différentes perspectives et compétences. Le processus complet de notre méthode est présenté sous forme détaillée dans ce mémoire. Ce mémoire présente une méthode et un outil permettant de mieux gérer le processus de test de grands logiciels complexes et de créer des cas de test plus efficaces et reproductibles. Plus important encore, cette méthode va permettre de réduire le temps nécessaire pour élaborer les cas, le plan et la procédure de test. De plus, et contrairement à la méthode de boîte noire, avec cette méthode nous serons en mesure de trouver la raison de l'anomalie trouvée. Toutes les étapes, les difficultés qui peuvent surgir au cours du processus et les livrables à chaque étape seront présentés et détaillés dans ce mémoire. Une comparaison avec les deux méthodes de test les plus répandues, méthode de boîte noire et méthode de boîte blanche, sera présentée à la fin de ce mémoire pour montrer les avantages de notre méthode. Le type d'anomalies à débusquer dans le cadre de ce mémoire est celui des anomalies informatiques relatives aux problèmes des finitudes de grandeur. Nous recommandons comme travail futur d'appliquer notre méthode pour le problème des « bombes logiques ». Car le test dans des conditions normales ne révèlera pas une telle bombe. Par contre, si les conditions spéciales requises par la « bombe logique » sont rencontrées, le programme agira d'une façon différente. Un bon dictionnaire relatif au contexte de bombes logiques et l'application de notre méthode va aider à trouver les anomalies recherchées. Un autre travail serait d'appliquer notre méthode pour tester les applications informatiques pour le problème de conversion vers l'Euro, un problème que tous les établissements informatiques cherchent à résoudre pour le début de l'an 2001.
APA, Harvard, Vancouver, ISO, and other styles
19

Belhaouari, Hakim. "Une approche intégrée pour la conception par contrat : vérification statique / dynamique et génération automatique de test." Paris 6, 2010. http://www.theses.fr/2010PA066116.

Full text
Abstract:
Les méthodes formelles légères facilitent l'introduction des outils formels en autorisant une spécification partielle du logiciel. En l'occurrence la granularité des vérifications dépend de la quantité d'information spécifiée. La fusion de ces méthodes semi-formelles (en particulier de la conception par contrat) et du test logiciel conduit à la notion de test basé sur les modèles (MBT). Ainsi, la découverte d'un oracle et la production des données de test peut être automatisée. Dans la génération automatique de tests, il est important de considérer le critère de qualité des tests produits. Cette qualité dépend des différents modes de productions. Le mode offrant la meilleur qualité consiste à analyser finement la spécification à l'aide de techniques de satisfaction de contraintes. Afin d'améliorer la qualité du logiciel, nous proposons dans cette thèse une méthodologie complète reposant sur la conception par contrat et différentes vérifications (dynamique et statique). En particulier, la génération automatique de tests dont l'enjeu est de produire de véritables scénarios de test qui suivent le plus précisément possible les spécifications ainsi qu'une stratégie de test clairement définie. La mise en œuvre des outils repose en grande partie sur un moteur de résolution de contrainte offrant une architecture ouverte. Ainsi l'utilisateur peut intégrer des types complexes qui ne sont pas supportés initialement grâce à la notion de constructeur de type. Nous présentons notamment le support pour deux types complexes: les tableaux bornés et les chaînes de caractères.
APA, Harvard, Vancouver, ISO, and other styles
20

Temple, Paul. "Investigate the matrix : leveraging variability to specialize software and test suites." Thesis, Rennes 1, 2018. http://www.theses.fr/2018REN1S087/document.

Full text
Abstract:
Aujourd'hui, les logiciels se doivent d'être efficaces, rapide à exécuter, etc. Ils peuvent être configurés dans le but de répondre à des besoins spécifiques donnés par l'utilisateur. De fait, chaque configuration donne lieu à un système unique, spécialisé pour des besoins précis. Le nombre de configurations possible devient tellement grand qu'il est impossible de générer tous les systèmes associés résultant en une impossibilité à évaluer leurs performances dans leur globalité. En plus de cela, différentes exécutions des systèmes sont souvent nécessaire, en utilisant différents cas de tests qui représentent différents contextes, pour évaluer correctement ces performances. Il y a donc un enjeu en terme d'énergie et de temps à pouvoir cibler correctement les configurations intéressantes pour un utilisateur ainsi que les cas de tests pertinents pour évaluer les performances d'un système. A partir de cette première analyse, deux dimensions émergent: la sélection de configurations de systèmes qui permettent par la suite de générer des systèmes respectant les besoins utilisateurs et, d'autre part, la sélection de cas de tests qui permettent d'observer les performances des systèmes dans différents contextes. Nous proposons dans cette thèse de représenter ces deux dimensions comme une matrice (de performance) dans laquelle : une dimension représente les systèmes sélectionnés (avec leur configuration) tandis que l'autre représente l'ensemble des cas de tests à exécuter sur chaque système. Chaque cellule de la matrice est alors le résultat de l'exécution d'un programme sur un cas de test. Les contributions principales de cette thèse sont : premièrement, l'utilisation de techniques d'apprentissage automatique pour spécialiser une ligne de produit logiciels visant à réduire l'espace de configuration pour sélectionner plus facilement une configuration qui satisfasse les besoins utilisateurs. Les utilisateurs doivent donc être capable d'exprimer leurs besoins de telle sorte que l'on se place dans un problème de classification binaire (i.e., permettant de dissocier les configurations qui ont la capacité à respecter ces besoins et les autres configurations qui n'ont pas l'air de pouvoir). Après cela, une technique d'apprentissage automatique est utilisé pour créer un modèle mathématique séparant les deux classes permettant par la suite de spécialiser la ligne de produits logiciel et de proposer des configurations partielles réduisant l'espace de configuration. Au final, ce travail permet de réduire la première dimension de la matrice qui traite des systèmes. Deuxièmement, nous proposons une nouvelle méthode permettant d'évaluer la capacité d'une suite de tests à montrer des différences de performances significatives exécuter par différents programmes qui présentent la même fonctionnalité. Cette méthode peut être utilisées dans différents cas, par exemple pour savoir si un nouveau cas de tests doit être ajouté ou non à une suite de tests existantes or bien pour réduire une suite de tests existante. Cette méthode vise à réduire la seconde dimension de la matrice
Nowadays, software have to be efficient, fast to execute, etc. They can be configured to adapt to specific needs. Each configuration leads to a different system and usually it is hard to generate them all. Thus, the exhaustive evaluation of their performance is impossible. Furthermore, several executions of systems, under different conditions, are needed to properly evaluate performances. Two dimensions emerge from this description of performance testing: the selection of system configurations allowing to generate associated systems that meet expressed needs and the selection of test cases allowing to observe performances of systems under different conditions. We propose to represent those two dimensions as a (performance) matrix: one dimension represents selected systems that can be observed while the other dimension represents the set of test cases that will be executed on each of these systems. Each cell is the execution of a program variant regarding a test. The contributions of this thesis are as follows : First, we leverage Machine Learning techniques in order to specialize a Software Product Line (in this case a video generator) helping in selecting a configuration that is likely to meet requirements. End users must be able to express their requirements such that it results in a binary decision problem (i.e., configurations that are acceptable and those that are not). Machine Learning techniques are then used to retrieve partial configurations that specialize a Software Product Line to guide end users and reduce the configuration space. In the end, this work aims at diminishing the first dimension of the matrix that deals with systems and programs. Second, we propose a new method assessing the ability of test suites to reveal significant performance differences of a set of configurations tackling the same task. This method can be used to assess whether a new test case is worth adding to a test suite or to select an optimal test set with respect to a property of interest. In the end, it might help structuring the execution of tests. For instance, it can create an order of execution resulting in using less test cases that are presented in the second dimension of the matrix. We evaluated our approach on several systems from different domains such as OpenCV or Haxe
APA, Harvard, Vancouver, ISO, and other styles
21

Carlier, Matthieu. "Test automatique de propriétés dans un atelier de développement de logiciels sûrs." Paris, CNAM, 2009. http://www.theses.fr/2009CNAM0654.

Full text
Abstract:
L'environnement FoCal, développé conjointement par des chercheurs des laboratoires CÉDRIC, LIP6 et de l'INRIA, permet de construire de manière incrémentale des composants de bibliothèque avec un haut niveau de confiance et de qualité. Un composant de bibliothèque FoCal peut contenir des spécifications, l'implantation des opérations spécifiées et des preuves que la spécification et l'implantation sont en conformité. Les composants FoCal sont traduits en code exécutable OCaml et vérifiés par l'assistant à la preuve Coq. Même si un développement en FoCal nous assure un haut degré de confiance dans le programme, de par une spécification formelle et les preuves de correction, nous ne pouvons nous passer du test. Les propriétés de bas niveau, comme les axiomes, ne sont en général pas prouvées. FoCal autorise l'importation de code non sûr au sein de code FoCal certifié, ce qui peut amener à « casser » la spécification. Finalement, le test peut être utilisé pour avoir confiance en une implantation dont la preuve de correction n'est pas encore effectuée ou terminée ou lorsqu'une tentative de preuve échoue, pour trouver des contre-exemples. Ce manuscrit présente le développement d'un outil de test intégré à FoCal. La méthodologie repose sur le test automatique de propriétés. Les jeux de test sont définis comme des valuations des variables quantifiées de la propriété sous test, qui satisfont les prémisses de la propriété (précondition). La conclusion de la propriété sert d'oracle pour le test. Nous proposons deux stratégies de recherche des jeux de test : aléatoire et par résolution de contraintes. Pour cette dernière, nous traduisons la précondition de la propriété en un système de contraintes. Sa résolution nous permet d'obtenir les jeux de test recherchés. Cette méthodologie est formellement définie et nous prouvons que les jeux de test ainsi construits satisfont la précondition
The FoCal environment, developed by researchers coming from the laboratories LIP6, CÉDRIC and INRIA), allows one to incrementally build library components with a high level of confidence and quality. A component of a FoCal library can contain specifications, implementations of operations and proofs that the implementations satisfy their specifications. The components are translated into OCaml code and verified by the Coq proof assistant. Even if the FoCal environment ensures a high level of confidence because of its methodology based on specification and proofs, we cannot do without testing. Low level properties, for example axioms, are usually not proven. FoCal permits one to import OCaml untrusted code into a FoCal certified code, which can \emph{break} the specification. Finally, testing could be used to check an implementation when a proof attempt fails or when the proof is not yet done, in order to find counter-examples for examples. This thesis deals with the design and development of a testing tool integrated into FoCal. The methodology consists in testing properties automatically. Test data are defined as valuations of the quantified variables of the property under test which satisfy the premises (called the precondition) of the property. The conclusion of the property serves as an oracle. We propose two approaches to select test data: randomly or through the usage of constraint reasoning. For the latter case, we translate the precondition into a constraint system whose resolution will provide us with the expected test data. Our approach is formally defined and we prove that the test data obtained by constraint resolution satisfy the precondition
APA, Harvard, Vancouver, ISO, and other styles
22

Mottu, Jean-Marie. "Oracles et qualification du test de transformations de modèles." Phd thesis, Université Rennes 1, 2008. http://tel.archives-ouvertes.fr/tel-00514506.

Full text
Abstract:
Dans l'Ingénierie Dirigée par les Modèles, les modèles sont des éléments productifs pour le développement logiciel. Ils sont exploités par les transformations de modèles qui automatisent les étapes du développement. Dans nos travaux de thèse, nous contribuons au test de transformations de modèles en étudiant cette problématique et en proposant des techniques de test adaptées aux caractéristiques et à l'emploi des transformations. Nous adaptons l'analyse de mutation pour qualifier les modèles de test selon leur pouvoir de détection d'erreurs propres aux transformations. Nous proposons des fonctions d'oracles et évaluons leur adéquation avec la complexité et la réutilisation d'une transformation. Enfin, nous exploitons nos travaux dans l'étude d'une méthode de développement de composants de confiance de transformation et nous proposons des outils permettant la mise en oeuvre et l'expérimentation de nos travaux et d'autres recherches sur le test de transformations de modèles.
APA, Harvard, Vancouver, ISO, and other styles
23

Mottu, Jean-Marie. "Oracles et qualification du test de transformations de modèles." Phd thesis, Rennes 1, 2008. ftp://ftp.irisa.fr/techreports/theses/2008/mottu.pdf.

Full text
Abstract:
Dans l’Ingénierie Dirigée par les Modèles, les modèles sont des éléments productifs pour le développement logiciel. Ils sont exploités par les transformations de modèles qui automatisent les étapes du développement. Dans nos travaux de thèse, nous contribuons au test de transformations de modèles en étudiant cette problématique et en proposant des techniques de test adaptées aux caractéristiques et à l’emploi des transformations. Nous adaptons l’analyse de mutation pour qualifier les modèles de test selon leur pouvoir de détection d’erreurs propres aux transformations. Nous proposons des fonctions d’oracles et évaluons leur adéquation avec la complexité et la réutilisation d’une transformation. Enfin, nous exploitons nos travaux dans l’étude d’une méthode de développement de composants de confiance de transformation et nous proposons des outils permettant la mise en œuvre et l’expérimentation de nos travaux et d’autres recherches sur le test de transformations de modèles
In Model Driven Engineering, models are high-level representations to produce software systems. They are processed by model transformations that automate development steps leading to a complete executable system. In this doctoral study, we make contributions to model transformation testing. Testing such model transformations for correctness presents some new challenges. First, we adapt mutation analysis to model transformations in order to qualify fault detecting effectiveness of a set of test models by considering model transformation specific faults. Second, we propose a set of functions to express test oracles for detecting faults in a transformation. We evaluate them regarding the complexity and reuse of model transformations. Finally, we integrate our techniques in tools that are used to develop reliable model transformation components and to assist in further model transformation testing studies
APA, Harvard, Vancouver, ISO, and other styles
24

Nebut, Clémentine. "Génération automatique de tests à partir des exigences et application aux lignes de produits logicielles." Rennes 1, 2004. http://www.theses.fr/2004REN10099.

Full text
Abstract:
La contribution de cette thèse est une approche de génération automatique de tests fonctionnels à partir des exigences, prenant en compte la maîtrise du coût de test, l'adaptabilité au contexte des lignes de produits, la compatibilité avec les pratiques industrielles et la complexité des logiciels réels. Notre approche se base sur un modèle de cas d'utilisation étendus, relié à un analyseur de langage naturel contrôlé en amont et un générateur de tests en aval. Le langage contrôlé rapproche la méthode des pratiques industrielles, et formalise assez les exigences pour les transformer en un modèle de cas d'utilisation simulables (via l'ajout de contrats interprétables). Des critères de test permettent alors de générer des objectifs de test de haut niveau, qui sont ensuite raffinés vers des cas de test en utilisant des scénarios. La variabilité dans les exigences est prise en compte à chaque niveau de la génération de tests, cette approche est donc adaptée aux lignes de produits.
APA, Harvard, Vancouver, ISO, and other styles
25

Vera, Pérez Oscar Luis. "Dynamic program analysis for suggesting test improvements to developers." Thesis, Rennes 1, 2019. http://www.theses.fr/2019REN1S122.

Full text
Abstract:
Les tests automatisés sont au cœur du développement de logiciels modernes. Pourtant, les développeurs éprouvent des difficultés lorsqu'il s'agit d'évaluer la qualité de leurs scénarios de test et de trouver des moyens de les améliorer. Le but principal de cette thèse est précisément de générer des suggestions concrètes que les développeurs peuvent suivre pour améliorer leurs suites de tests. Nous proposons l'utilisation de mutations extrêmes ou de transformations extrêmes comme alternative pour découvrir les problèmes de test. Les transformations extrêmes sont une forme de test par mutation qui supprime toute la logique d'une méthode au lieu d'effectuer un petit changement syntaxique dans le code. Comme son homologue traditionnel, elle challenge la suite de tests avec une variante du programme pour voir si les cas de tests peuvent détecter le changement. Dans cette thèse, nous évaluons la pertinence des problèmes de test que les transformations extrêmes peuvent mettre en évidence. Nous proposons également une analyse dynamique de infection-propagation pour dériver automatiquement des suggestions concrètes d'amélioration des tests à partir de transformations extrêmes non détectées. Nos résultats sont validés par les échanges avec les développeurs. Nous faisons également état de l'adoption industrielle de certaines parties de nos résultats
Automated testing is at the core of modern software development. Yet developers struggle when it comes to the evaluation of the quality of their test cases and how to improve them. The main goal of this thesis is precisely that, to generate concrete suggestion that developers can follow to improve their test suite. We propose the use of extreme mutation, or extreme transformations as an alternative to discover testing issues. Extreme transformations are a form of mutation testing that remove the entire logic of a method instead of making a small syntactic change in the code. As it traditional counterpart it challenges the test suite with a transformed variant of the program to see if the test cases can detect the change. In this thesis we assess the relevance of the testing issues that extreme transformations can spot. We also propose a dynamic infection-propagation analysis to automatically derive concrete test improvement suggestions from undetected extreme transformations. Our results are validated through the interaction with actual developers. We also report the industrial adoption of parts of our results. developers to improve their tests by detecting more of these transformations. Our results are validated through the interaction with actual developers
APA, Harvard, Vancouver, ISO, and other styles
26

Petit, Matthieu Jensen Thomas. "Test statistique structurel par résolution par contraintes de choix probabiliste." Rennes : [s.n.], 2008. ftp://ftp.irisa.fr/techreports/theses/2008/petit.pdf.

Full text
APA, Harvard, Vancouver, ISO, and other styles
27

Lazaar, Nadjib. "Méthodologie et outil de Test, de localisation de fautes et de correction automatique des programmes à contraintes." Rennes 1, 2011. http://www.theses.fr/2011REN1S115.

Full text
Abstract:
Le développement des langages de modélisation des programmes à contraintes a eu un grand impact dans le monde industriel. Des langages comme OPL (Optimization Programming Language) de IBM Ilog, Comet de Dynadec, Sicstus Prolog, Gecode, ainsi que d'autres, proposent des solutions robustes aux problèmes du monde réel. De plus, ces langages commencent à être utilisés dans des applications critiques comme la gestion et le contrôle du trafic aérien, le e-commerce et le développement de programmes critiques. D'autre part, il est connu que tout processus de développement logiciel effectué dans un cadre industriel inclut impérativement une phase de test, de vérification formelle et/ou de validation. Par ailleurs, les langages de programmation par contraintes (PPC) ne connaissent pas d'innovations majeures en termes de vérification et de mise au point. Ceci ouvre la voie à des recherches orientées vers les aspects génie logiciel dédiés à la PPC. Notre travail vise à poser les jalons d'une théorie du test des programmes à contraintes pour fournir des outils conceptuels et des outils pratiques d'aide à cette vérification. Notre approche repose sur des hypothèses quant au développement et au raffinement dans un langage de PPC. Il est usuel de démarrer à partir d'un modèle simple et très déclaratif, une traduction fidèle de la spécification du problème, sans accorder un intérêt à ses performances. Par la suite, ce modèle est raffiné par l'introduction de contraintes redondantes ou reformulées, l'utilisation de structures de données optimisées, de contraintes globales, de contraintes qui cassent les symétries, etc. Nous pensons que l'essentiel des fautes introduites est compris dans ce processus de raffinement. Le travail majeur présenté dans la présente thèse est la définition d'un cadre de test qui établit des règles de conformité entre le modèle initial déclaratif et le programme optimisé dédié à la résolution d'instances de grande taille. Par la suite, nous proposons un cadre conceptuel pour la mise-au-point de ce type de programmes avec une méthodologie pour la localisation et la correction automatique des fautes. Nous avons développé un environnement de test, nommé CPTEST, pour valider les solutions proposées, sur des problèmes académiques du monde de la PPC ainsi qu'un problème du monde réel qui est le problème d'ordonnancement des véhicules
The success of several constraint-based modelling languages such as OPL (Optimization programming Language) of IBM Ilog, COMET of Dynadec, Sicstus Prolog, Gecode, appeals for better software engineering practices, particularly in the testing phase. These languages aim at solving industrial combinatorial problems that arise in optimization, planning, or scheduling. Recently, a new trend has emerged that propose also to use CP programs to address critical applications in e-Commerce, air-traffic control and management, or critical software development that must be thoroughly verified before being used in applications. While constraint program debugging drew the attention of many researchers, few supports in terms of software engineering and testing have been proposed to help verify this kind of programs. In the present thesis, we define a testing theory for constraint programming. For that, we propose a general framework of constraint program development which supposes that a first declarative and simple constraint model is available from the problem specifications analysis. Then, this model is refined using classical techniques such as constraint reformulation, surrogate, redundant, implied and global constraint addition, or symmetry-breaking to form an improved constraint model that must be tested before being used to address real-sized problems. We think that most of the faults are introduced in this refinement step and propose a process which takes the first declarative model as an oracle for detecting non-conformities and derive practical test purposes from this process. Therefore, we enhance the proposed testing framework to introduce a methodology for an automatic tuning with fault localization and correction in constraint programs. We implemented these approaches in a new tool called CPTEST that was used to automatically detect, localize and correct faults on classical benchmark programs and real-world CP problem: the car-sequencing problem
APA, Harvard, Vancouver, ISO, and other styles
28

Donin, de Rosière Emmanuel. "Un langage non déterministe pour l'écriture de scénarios de test." Rennes 1, 2007. http://www.theses.fr/2007REN1S151.

Full text
Abstract:
La phase de test est une étape importante dans le développement et représente aujourd’hui un enjeu capital pour les opérateurs téléphoniques. Il est donc nécessaire d’avoir à disposition des outils permettant d’exprimer facilement certains comportements complexes, mais courants des systèmes télécoms afin de pouvoir exécuter automatiquement des campagnes de tests sans intervention humaine. Cette étude cherche donc à pallier ce problème et essayer, après une analyse rigoureuse des langages actuels, de proposer des constructions innovantes répondant à notre problématique. Certaines de ces constructions utilisent un paradigme non déterministe afin de spécifier facilement des comportements concurrents ou non contrôlables. En plus de cette proposition, nous allons essayer de vérifier les idées avancées au travers d’un prototype permettant d’évaluer les constructions innovantes, mais aussi de valider définitivement celles-ci lors du test réel d’une application industrielle
The testing phase is an important step in the development and now represents a crucial issue for telecommunication companies. One possible way for reducing the development time and increasing the software quality is to automize as possible the testing phase. So, we need tools for expressing easily complex, but common, behaviours in order to execute automatically test compaign without any human intervention. This study tries to get round this problem and, just after an analysis of the current testing languages which deal with active black-box testing, it will put forward several new constructions for this domain trying to solve this problem. Several of this constructions use a nondeterministic paradigm for easily expressing concurrent or non-controllable behaviours. Moreover, we will try to verify these ideas through a prototype which implements these new functionnalities and also validate these constructions during a real test of an industrial project
APA, Harvard, Vancouver, ISO, and other styles
29

Petit, Matthieu. "Test statistique structurel par résolution par contraintes de choix probabiliste." Rennes 1, 2008. ftp://ftp.irisa.fr/techreports/theses/2008/petit.pdf.

Full text
Abstract:
Dans cette thèse, une méthode de génération statistique de données de test est présentée. Les jeux de tests générés respectent certaines propriétés probabilistes : la sélection uniforme de chemins exécutables satisfaisant un objectif de test structurel et la sélection uniforme de données de test activant le chemin sélectionné. Pour adresser ce problème, nous combinons une modélisation stochastique et à contraintes pour adresser le problème de génération statistique de données de test. Des contraintes permettant de modéliser des choix probabilistes partiellement connus sont définies. Dans ce cadre de travail, la sélection uniforme de chemins exécutables est exprimée comme un programme à contrainte de choix probabiliste. Un algorithme permet la sélection uniforme des données de test activant le chemin sélectionné. Le prototype GENETTA a permis de valider la méthode de test. Notre librairie de contraintes de choix probabiliste PCC(FD) constitue le coeur de ce prototype
In this thesis, a method to automatically generate test data at random is proposed. The test data generator respects strong probabilistic properties: uniform selection of feasible paths that satisfy the coverage of structural testing criteria and uniform selection of test data that execute the selected paths. We combine stochastic and constraint modelling to address the statistical test data generation problem. Stochastic modelling is based on the assumption that the distribution probability is known. We define probabilistic choice constraints to reason on random variables whose probability distribution is only partially known. In this framework, uniform selection of feasible paths is expressed as a problem of probabilistic choice constraints. An algorithm is proposed to generate uniformly test data that activate a path. GENETTA tools permits to validate the statistical test data generator. This tool uses our library of probabilistic choice constraints PCC(FD)
APA, Harvard, Vancouver, ISO, and other styles
30

Behnia, Salimeh Thévenod-Fosse Pascale. "Test de modèles formels en B cadre théorique et critères de couverture /." Toulouse : INP Toulouse, 2004. http://ethesis.inp-toulouse.fr/archive/00000008.

Full text
APA, Harvard, Vancouver, ISO, and other styles
31

Bousquet, Lydie du. "Test fonctionnel statistique de logiciels spécifiés en Lustre : application à la validation de services téléphoniques." Université Joseph Fourier (Grenoble), 1999. http://tel.archives-ouvertes.fr/tel-00004828.

Full text
Abstract:
Ce travail s'inscrit dans le cadre de la conception d'environnements de test fonctionnel de systèmes réactifs spécifiés formellement en Lustre. Lutess est un tel environnement. Il permet la génération automatique et dynamique de données de test. Cette génération est menée sous contraintes, de manière aléatoire, et éventuellement guidée par des propriétés. Nous avons étendu cet environnement par une méthode de test de type statistique, qui facilite la génération des données de test considérées comme significatives par l'utilisateur. Nous avons validé expérimentalement Lutess avant et après son extension, en montrant que les données générées étaient bien aléatoires et qu'elles respectaient les distributions statistiques attendues. De plus, nous avons utilisé Lutess et la méthode proposée de façon intensive pour la validation de spécifications de services téléphoniques sur deux études de cas conséquentes : une fournie par le CNET et une autre sous la forme d'un concours proposé en marge de la conférence "Feature Interaction Workshop'98". A cette occasion, Lutess a été déclaré "meilleur outil pour la détection d'interactions de services téléphoniques"
APA, Harvard, Vancouver, ISO, and other styles
32

Zinovieva-Leroux, Eléna. "Méthodes symboliques pour la génération de tests de systèmes réactifs comportant des données." Rennes 1, 2004. https://tel.archives-ouvertes.fr/tel-00142441.

Full text
Abstract:
La complexité croissante des systèmes réactifs fait que le test devient une technique de plus en plus importante dans ledéveloppement de tels système. Un grand intérêt est notamment accordé au test de conformité qui consiste à vérifier si les comportements d'un système sous test sont corrects par rapport à sa spécification. Au cours des dernières années, les théories et outils de test de conformité pour la génération automatique de testse sont développées. Dans ces théories et algorithmes, les spécifications des systèmes réactifs sont souvent modélisées par différentes variantes des systèmes de transitions. Cependant, ces théories et outils ne prennent pas explicitement en compte les données du système puisque le modèle sous-jacent de système de transitions ne permet pas de le faire. Ceci oblige à énumérer les valeurs des données avant de construire le modèle de système de transitions d'un système, ce qui peut provoquer le problème de l'explosion de l'espace d'états. Cette énumération a également pour effet d'obtenir des cas de test où toutes les données sont instanciées. Or, cela contredit la pratique industrielle où les cas de test sont de vrais programmes avec des variables et des paramètres. La génération de tels cas de test exige de nouveaux modèles et techniques. Dans cette thèse, nous atteignons deux objectifs. D'une part, nous introduisons un modèle appelé système symbolique de transitions à entrée/sortie qui inclut explicitementtoutes les données d'un système réactif. D'autre part, nous proposons et implémentons une nouvelle technique de génération de test qui traite symboliquement les données d'un système en combinant l'approche de génération de test proposée auparavant par notre groupe de recherche avec des techniques d'interprétation abstraite. Les cas de test générés automatiquement par notre technique satisfont des propriétés de correction: ils émettent toujours un verdict correct.
APA, Harvard, Vancouver, ISO, and other styles
33

Paoli, Christophe. "Validation de descriptions VHDL fondée sur des techniques issues du domaine du test de logiciels." Phd thesis, Corte, 2001. http://tel.archives-ouvertes.fr/tel-00438748.

Full text
Abstract:
L'objectif de cette dissertation est de développer une approche originale de validation de circuits digitaux complexes décrits dans le langage VHDL. Nous proposons de générer automatiquement, à partir d'une description VHDL comportemental au niveau algorithmique, les vecteurs de test à appliquer sur une description de niveau RTL. Nous présentons d'abord la validation de descriptions VHDL au niveau algorithmique dans le contexte général du processus de conception de circuits complexes. Ce type de description étant similaire à un programme, nous explorons les techniques utilisées dans le domaine du test de logiciels, notamment celles basées sur un critère de couverture. Nous présentons le critère du test structuré, qui est fondé sur l'utilisation du graphe de flot de contrôle du programme sous test, et de la complexité cyclomatique de McCabe comme index du nombre de chemins à tester. Nous présentons également l'algorithme de Poole qui permet de générer cet ensemble de chemins. Cependant, le langage VHDL possède des caractéristiques que l'on ne retrouve pas dans les langages de programmation traditionnels (notion de temps, interconnexion de « process » s'exécutant en parallèle, mécanisme de « retard delta »). Nous proposons donc une modélisation adéquate sous forme de graphes, permettant d'appliquer les techniques précédentes à des descriptions VHDL restreintes à un sous-ensemble prenant en compte un style de description algorithmique : un graphe de flot de contrôle, un graphe de modélisation de « process », un graphe de dépendance. Nous exposons ensuite une méthodologie pour la génération de vecteurs de test à partir des chemins générés depuis ces graphes : application de l'algorithme de Poole sur la base de la complexité cyclomatique, analyse et modification éventuelle des chemins, génération et résolution des contraintes, extraction des vecteurs de test. L'approche est finalement illustrée par la réalisation du prototype logiciel GENESI qui nous a permis d'obtenir des résultats sur les « benchmarks ITC'99 ».
APA, Harvard, Vancouver, ISO, and other styles
34

Muzammil, Shahbaz Muhammad. "Rétro-conception de modèles d'automates étendus de composant logiciels boîte-noire pour le test d'intégration." Grenoble INPG, 2008. http://www.theses.fr/2008INPG0166.

Full text
Abstract:
Le problème principal auquel on est confronté dans l'utilisation d'outils automatiques de validation (test ou vérification) est l'absence de spécification des composants également connus comme boîtes-noires. Même lorsqu'une spécification a été disponible à un stade antérieur, elle est souvent incomplète. C'est pourquoi une bonne part de la validation consiste à émettre et valider des hypothèses sur les composants assemblés. Nous proposons une solution pour l'intégration de composants boîtes-noires par une approche d'apprentissage. Cette approche apprend le modèle du composant sous la forme d’une machine d'état finis entrées/sorties (avec des paramètres). Ensuite, nous proposons un framework de test pour les systèmes intégrés basé sur les modèles appris. Nous avons validé notre approche sur plusieurs études de cas fournies par France Telecom R&D et présentons leurs résultats
A challenging issue in component based software engineering is to deliver quality of service. When components come from third-party sources (aka black boxes), the specifications are often absent/insufficient for their formal analysis. The thesis addresses the problem of uncovering the behaviors of black box software components to support testing and analysis of the integrated system that is composed of such components. We propose to learn finite state machine models (where transitions are labelled with parameterized inputs/outputs) and provide a framework for testing and analyzing the integrated system using the inferred models. The approach has been validated on various case studies provides by France Telecom that has produced encouraging results
APA, Harvard, Vancouver, ISO, and other styles
35

Finot, Olivier. "Oracles du test de transformations de modèles." Nantes, 2014. http://archive.bu.univ-nantes.fr/pollux/show.action?id=2069ea58-6610-4161-8bef-5c993ad30652.

Full text
Abstract:
L’Ingénierie Dirigée par les Modèles place les modèles au coeur du cycle de développement logiciel. Ces modèles évoluent par le biais de diverses transformations. Dans cette thèse nous nous sommes intéressés à la validation de ces transformations de modèles par le test, et en particulier à l’oracle de ce test. Nous proposons deux approches pour assister le testeur dans la création de ces oracles. Tout d’abord, nous offrons une assistance passive en fournissant au testeur une nouvelle fonction d’oracle. Cette dernière lui permet de créer des oracles qui ne contrôlent qu’une partie des modèles obtenus. Nous avons défini la notion de verdict partiel, explicité les situations où un verdict partiel est plus avantageux et proposé un protocole global du test de transformations dans ce contexte. Nous avons mis en oeuvre cette première proposition dans un outillage avec lequel nous l’avons expérimentée. Ensuite, nous offrons au testeur une assistance active en étudiant la qualité d’un ensemble d’oracles. Nous considérons la qualité d’un ensemble d’oracles selon sa capacité à détecter des fautes dans la transformation sous test. Nous proposons une méthode qui corrige en partie les insuffisances de l’analyse de mutation, utilisée dans ce contexte ; nous mesurons la couverture du méta-modèle de sortie par l’ensemble d’oracles considéré. Nous montrons que notre approche est indépendante du langage utilisé pour la mise en oeuvre de la transformation sous test, et fournit au testeur des informations pour l’amélioration des oracles. Nous avons défini une démarche pour mesurer la couverture et qualifier des oracles. Nous avons développé un outil pour expérimenter et valider notre proposition
With Model Driven Engineering models are the heart of software development. These models evolve through transformations. In this thesis our interest was the validation for these model transformations by testing, and more precisely the test oracles. We propose two approaches to assist the tester to create these oracles. With the first approach this assistance is passive; we provide the tester with a new oracle function. The test oracles created with this new oracle function control only part of the model produced by the transformation under test. We defined the notion of partial verdict, described the situations where having a partial verdict is beneficial for the tester and how to test a transformation in this context. We developed a tool implementing this proposal, and ran experiments with it. With the second approach, we provide a more active assistance about test oracles’ quality. We study the quality of a set of model transformation test oracles. We consider that the quality of a set of oracles is linked to its ability to detect faults in the transformation under test. We show the limits of mutation analysis which is used for this purpose, then we propose a new approach that corrects part of these drawbacks. We measure the coverage of the output meta-model by the set of oracles we consider. Our approach does not depend on the language used for the transformation under test’s implementation. It also provides the tester with hints on how to improve her oracles. We defined a process to evaluate meta-model coverage and qualify test oracles. We developed a tool implementing our approach to validate it through experimentations
APA, Harvard, Vancouver, ISO, and other styles
36

Le, Guen Hélène. "Validation d'un logiciel par le test statistique d'usage : de la modélisation à la décision de livraison." Rennes 1, 2005. http://www.theses.fr/2005REN1S049.

Full text
Abstract:
Le test de logiciel est un domaine complexe, et le temps alloué au test peut être réduit dans certains cas. Dans ce cadre nous proposons une méthode complète pour la validation de logiciel allant de l'élaboration du plan de test jusqu'à la décision de livraison. Notre méthode est basée sur le test statistique d'usage, en prenant en considération le test de conformité ainsi que de nouvelles avancées du test de logiciel. La méthode présentée consiste à modéliser le comportement externe du système à l'aide de chaînes de Markov. Plusieurs résultats avant test permettent de planifier au mieux la phase de validation. Ce modèle est ensuite utilisé pour la génération automatique de séquences de test. Nous nous sommes intéressés à la couverture de test lorsque le logiciel est modélisé par des diagrammes à états. En utilisant une définition de couverture de test basée sur les données et la structure fonctionnelle, nous proposons une nouvelle solution pour l'estimation de la fiabilité.
APA, Harvard, Vancouver, ISO, and other styles
37

Arazo, Alberto. "Sûreté de fonctionnement de systèmes logiciels critiques : validation expérimentale d'un système de contrôle-commande du commerce." Toulouse, INPT, 2002. http://www.theses.fr/2002INPT018H.

Full text
Abstract:
L'acquisition de systèmes logiciels sur étagère (COTS) pose une problématique sérieuse pour la sûreté de fonctionnement des systèmes critiques auxquels ils s'intègrent et des nouvelles stratégies de validation s'avèrent nécessaires. La principale difficulté provient du peu d'information à priori disponible sur leur conception, ce qui rend impossible leur validation, dans des conditions opérationnelles, avec un niveau de confiance compatible avec des exigences critiques. La démarche que nous préconisons a été définie dans le cadre d'un processus d'acceptation dans lequel un industriel cherche à acquérir et à qualifier un système complet de contrôle-commande du commerce (SCC-COTS), répondant à ses exigences de sûreté de fonctionnement et à celles des autorités de tutelle. Notre démarche propose tout abord un méta-modèle d'architecture de système, permettant d'instancier une offre de SCC-COTS compatible avec les besoins fonctionnels de l'acquéreur. Le méta-modèle proposé vise à fournir les moyens pour, d'une part, construire le référentiel d'informations suffisantes pour la validation expérimentale de la sûreté de fonctionnement par injection de fautes et, d'autre part, mieux identifier et analyser l'impact des fautes injectées sur les exigences aussi bien fonctionnelles que de sûreté de fonctionnement. Autour de ce référentiel nous avons conçu un outillage de support où l'analyse formelle du comportement des composants logiciels du SCC-COTS prend une place importante. Les exécutions symboliques déduites de cette analyse constituent un oracle d'une implémentation. Elles permettent aussi bien d'analyser l'impact de fautes sur les propriétés du système, exprimées à l'aide de la logique temporelle, que de guider le test opérationnel des mécanismes internes de tolérance aux fautes. Ce dernier aspect est illustré sur un mécanisme de communication d'un SCC-COTS, destiné à la supervision de centrales de production d'énergie.
APA, Harvard, Vancouver, ISO, and other styles
38

Feliachi, Abderrahmane. "Test basé sur la sémantique pour Circus." Phd thesis, Université Paris Sud - Paris XI, 2012. http://tel.archives-ouvertes.fr/tel-00821836.

Full text
Abstract:
Le travail présenté dans cette thèse est une contribution aux méthodes formelles de spécification et de vérification. Les spécifications formelles sont utilisées pour décrire un logiciel, ou plus généralement un système, d'une manière mathématique sans ambiguïté. Des techniques de vérification formelle sont définies sur la base de ces spécifications afin d'assurer l'exactitude d'un système donné. Cependant, les méthodes formelles ne sont souvent pas pratiques et facile à utiliser dans des systèmes réels. L'une des raisons est que de nombreux formalismes de spécification ne sont pas assez riches pour couvrir à la fois les exigences orientées données et orientées comportement. Certains langages de spécification ont été proposés pour couvrir ce genre d'exigences. Le langage Circus se distingue parmi ces langues par une syntaxe et une sémantique riche et complètement intégrées.L'objectif de cette thèse est de fournir un cadre formel pour la spécification et la vérification de systèmes complexes. Les spécifications sont écrites en Circus et la vérification est effectuée soit par des tests ou par des preuves de théorèmes. Des environnements similaires de spécification et de vérification ont déjà été proposés dans la littérature. Une spécificité de notre approche est de combiner des preuves de théorème avec la génération de test. En outre, la plupart des méthodes de génération de tests sont basés sur une caractérisation syntaxique des langages étudiés. Notre environnement est différent car il est basé sur la sémantique dénotationnelle et opérationnelle de Circus. L'assistant de preuves Isabelle/HOL constitue la plateforme formelle au-dessus de laquelle nous avons construit notre environnement de spécification et de vérification.La première contribution principale de notre travail est l'environnement formel de spécification et de preuve Isabelle/Circus, basé sur la sémantique dénotationnelle de Circus. Sur la base d'Isabelle/HOL nous avons fourni une intégration vérifiée d'UTP, la base de la sémantique de Circus. Cette intégration est utilisée pour formaliser la sémantique dénotationnelle du langage Circus. L'environnement Isabelle/Circus associe à cette sémantique des outils de parsing qui aident à écrire des spécifications Circus. Le support de preuve d'Isabelle/HOL peut être utilisé directement pour raisonner sur ces spécifications grâce à la représentation superficielle de la sémantique (shallow embedding). Nous présentons une application de l'environnement à des preuves de raffinement sur des processus Circus (impliquant à la fois des données et des aspects comportementaux).La deuxième contribution est l'environnement de test CirTA construit au-dessus d'Isabelle/Circus. Cet environnement fournit deux tactiques de génération de tests symboliques qui permettent la vérification de deux notions de raffinement: l'inclusion des traces et la réduction de blocages. L'environnement est basé sur une formalisation symbolique de la sémantique opérationnelle de Circus avec Isabelle/Circus. Plusieurs définitions symboliques et tactiques de génération de test sont définies dans le cadre de CirTA. L'infrastructure formelle permet de représenter explicitement les théories de test ainsi que les hypothèses de sélection de test. Des techniques de preuve et de calculs symboliques sont la base des tactiques de génération de test. L'environnement de génération de test a été utilisé dans une étude de cas pour tester un système existant de contrôle de message. Une spécification du système est écrite en Circus, et est utilisé pour générer des tests pour les deux relations de conformité définies pour Circus. Les tests sont ensuite compilés sous forme de méthodes de test JUnit qui sont ensuite exécutées sur une implémentation Java du système étudié.
APA, Harvard, Vancouver, ISO, and other styles
39

Voon, Lew Yan, and Lew Fock Chong. "Contribution au test intégré déterministe : structures de génération de vecteurs de test." Montpellier 2, 1992. http://www.theses.fr/1992MON20035.

Full text
Abstract:
Ce memoire concerne la synthese de structures de generation de vecteurs de test (gvt) deterministes. Une etude empirique, basee sur des simulations exhaustives, des sequences generees par des registres a decalage a retroaction lineaire et non-lineaire montre que ces derniers sont inaptes a produire des sequences de vecteurs de test deterministes. Nous avons donc etendu notre recherche au cas general de machine d'etats finis lineaire et autonome (mefla) avec inversion. Apres avoir presente les principes fondamentaux d'une mefla avec inversion, nous proposons une methode de synthese de structures gvt deterministes et deterministe/pseudo-aleatoire
APA, Harvard, Vancouver, ISO, and other styles
40

Behnia, Salimeh. "Test de modèles formels en B : cadre théorique et critères de couverture." Phd thesis, Toulouse, INPT, 2000. http://oatao.univ-toulouse.fr/7345/1/behnia.pdf.

Full text
Abstract:
Les travaux présentés dans ce mémoire définissent un cadre théorique pour le test de logiciels développés selon la méthode formelle B. Les tests visent à révéler les fautes dues à une mauvaise compréhension ou à une mauvaise modélisation d’un besoin fonctionnel, et complètent ainsi les preuves effectuées pendant le développement formel. Un développement B peut être vu comme une série d’étapes durant lesquelles des modèles de plus en plus concrets de l’application sont construits, le code final pouvant être considéré comme une version compilée du modèle le plus concret. Le cadre théorique de test que nous avons défini est un cadre unifié, indépendant du fait que les résultats de test soient obtenus de l’animation des modèles ou de l’exécution du code. Ce cadre est explicitement lié à la notion du raffinement des modèles B : pour une entrée de test, l’acceptation des résultats fournis par un modèle implique l’acceptation des résultats fournis par les raffinements corrects de celui-ci. Nous définissons ensuite une approche d’analyse structurelle des modèles B. En poursuivant le cadre unifié, notre objectif est de définir des stratégies de couverture qui soient applicables à la fois à un modèle abstrait et à un modèle concret. Ceci a nécessité d’unifier pour les modèles B deux catégories de critères : • critères de couverture des spécifications orientées modèle basés sur la couverture des prédicats avant/après ; • critères classiques de couverture structurelle des programmes basés sur la couverture du graphe de contrôle. A partir de cette unification, nous avons défini un ensemble de critères, ordonnés selon la relation d’inclusion, qui complètent les critères existants.
APA, Harvard, Vancouver, ISO, and other styles
41

Charles, Olivier. "Application des hypothèses de test à une définition de la couverture." Nancy 1, 1997. http://www.theses.fr/1997NAN10255.

Full text
Abstract:
Le test de conformité est l'activité qui consiste à s'assurer qu'un produit fini remplit bien les fonctions pour lesquelles il a été conçu. Du fait de leur complexité, les systèmes de communication ne peuvent être testés exhaustivement. Dans la pratique, les tests réels sont donc souvent incomplets et imparfaits. La couverture de test, sous ses différentes formes, est une notion qui vise à rendre compte de cette imperfection. C'est donc une mesure de qualité importante pour la sélection ou la génération automatique de test. Lorsqu'ils sélectionnent les tests, les experts du test fondent leurs choix sur des hypothèses de test. Autrement dit, leur expérience leur permet d'inférer quelles sont les bonnes propriétés de l'implantation qui leur permettront de soulager l'effort de test. Dans cette thèse nous proposons de définir la H-couverture de test comme l'ensemble des hypothèses qu'il est pertinent de faire pour que le test réel soit équivalent au test exhaustif. Dans une première partie, nous définissons précisément ce qu'est la H-couverture et nous montrons que pour rendre cette mesure effective ; il est nécessaire de disposer d'un système d'écriture des hypothèses. Dans une deuxième partie, nous apportons une solution au problème sur un modèle particulier de systèmes : les automates à entrées et sorties. Nous proposons dans un premier temps de représenter les hypothèses par le biais d'ensembles de traces puis, dans un deuxième temps comme des transformateurs d'automates
Conformance testing aims at checking that a product complies to the requirements for which it has been developed. Because of their complexity, communicating systems cannot be tested exhaustively. In practice, real tests are incomplete and never perfect. The goal of test coverage is to express this imperfection. So, it is an important measure for test selection and automatic test generation. When selecting test suites, test experts make choices based on test hypotheses. In other words, their experience of testing allows them to infer some good properties on the imlementation which decrease test effort. In this thesis, we propose to define H-coverage as the set of hypotheses which must be made such that the implementation is equivalent to the exhaustive test. In a first part, we precisely define H-coverage and we show that it is necessary to have a formalism available to write hypotheses in order to compute this measure. In a second part we solve the problem for a particular set of systems : the input outputautomata. First we propose to write hypotheses through trace sets, and then as automata transformers
APA, Harvard, Vancouver, ISO, and other styles
42

Shaheen, Muhammad Rabee. "Validation de métriques de testabilité logicielle pour les programmes objets." Phd thesis, Université Joseph Fourier (Grenoble), 2009. http://tel.archives-ouvertes.fr/tel-00978771.

Full text
Abstract:
Pour les systèmes logiciels, la méthode de validation la plus utilisée est le test. Tester consiste en l'exécution du logiciel en sélectionnant des données et en observant/jugeant les sorties. C'est un processus souvent coûteux. Il dépend de la complexité du logiciel, des objectifs en termes de validation, des outils et du processus de développement. La testabilité logicielle s'intéresse à caractériser et prédire l'effort de test. Cela est nécessaire pour estimer le travail de test, prévoir les coûts, planifier et organiser le travail. De nombreuses mesures ont été proposées dans la littérature comme indicateurs du coût du test. Ces mesures sont focalisées sur l'évaluation de certains attributs qui peuvent rendre le test difficile. D'autres approches proposent de repérer des constructions difficiles à tester à l'aide de patrons (testability antipatterns) par exemple. D'une façon générale, peu d'études ont été réalisées pour valider ces métriques ou patrons. Certaines de ces études donnent des résultats contradictoires. Or il est essentiel de fournir des informations non biaisées. Notre travail de thèse porte en premier lieu sur la validation de certaines métriques de testabilité proposées pour la prédiction du coût du test de programmes objet. Notre approche s'appuie sur une mise en relation des métriques et des stratégies de test et vise à l'établissement de corrélation entre coût prédictive et coût effective. Ceci nous a conduit à raffiner certaines métriques étudiées. Dans un second temps, nous nous sommes intéressés à des patrons (testability antipatterns) visant à détecter des faiblesses dans le code vis à vis du test. Le but de cette étude est de comprendre à quels moments ces constructions sont introduites dans le code, afin de les repérer le plus efficacement possible.
APA, Harvard, Vancouver, ISO, and other styles
43

Shaheen, Muhammad Rabee. "Validation de métriques de testabilité logicielle pour les programmes objets." Phd thesis, Grenoble 1, 2009. http://www.theses.fr/2009GRE10210.

Full text
Abstract:
Pour les systèmes logiciels, la méthode de validation la plus utilisée est le test. Tester consiste en l'exécution du logiciel en sélectionnant des données. En observant/jugeant les sorties, C'est un processus souvent coûteux. L'effort de test est difficile à caractériser précisément. Il dépend de la complexité du logiciel, des objectifs en termes de validation, des outils et du processus développement. La testabilité logicielle s'intéresse à caractériser et prédire l'effort de test. Cela est nécessaire pour estimer le travail de test, prévoir les coûts, planifier et organiser le travail. De nombreuses mesures ont été proposées dans la littérature comme indicateurs du coût du test. Ces mesures sont focalisées sur l'évaluation de certains attributs qui peuvent rendre le test difficile. D'autre approches proposent de repèrer des constructions difficiles à tester à l'aide de patrons (testability antipatterns) par exemple, D'une, fa, çon générale, peu d'études ont été réalisées pour valider ces métriques ou patrons. Certaines de ces études donnent des résultats contradictoires. Or i est essentiel de fournir des informations non biaisées. Notre travail de thèse porte en premier lieu sur la validation de certaines métriques de testabilité proposées pour la prédiction du coût du test de programmes objet. Notre approche s'appuie sur une mise en relation des métriques et des stratégies de test et vise à l'établissement de corrélation entre coût prédictive et coût effective. Ceci nous a conduit à raffiner certaines des métriques étudiées. Dans un second temps, nous nous sommes intéressés à des patrons (testability antipattems) visant à détecter des faiblesses dans le code vis à vis du test. Le but de cette étude est de comprendre à quels moments ces constructions sont introduites dans le code, afin de les repérer le plus efficacement possible
The most used validation method for software is testing. Testing process consists of executing the program by selecting a set of data and observing the outputs of the program. The testing process is a costly in terms of time and money. Estimating the effort of testing is important in order to be able to plan the testing phase. Therefore, sorne reliable indicators are required to predict the cost oftesting, according to the selected testing strategy. Software testability is a concept that characterizes the effort of testing. A variety of software metrics were proposed in the literature as indicators of software testability. AIl of them focus on measuring sorne software attributes that intend to make test difficult. A few studies have been carried out in order to validate these metrics. Sorne of these studies have controversial results about same metrics. Our work in this thesis focuses on validating sorne testability metrics, and examining whether they could be really used as indicators of testability. Our approach in metrics validation considers both testability metrics and testing strategies, i. E. Our methodology checks a specifie metric against a specifie testing criterion with respect to predefined hypotheses, and evaluates how much they are correlated. Additionally, we have defined new metrics which are a result of an adapting of sorne c1assical object-oriented metrics. The second part of our work concentrates on the testability antipattems. The purpose ofthis part is checking sorne testability antipatterns and detecting at which point they are introduced during the software development phases
APA, Harvard, Vancouver, ISO, and other styles
44

Blondeau, Vincent. "Test selection practices in a large IT company." Thesis, Lille 1, 2017. http://www.theses.fr/2017LIL10101/document.

Full text
Abstract:
Worldline, une importante société d’informatique, doit améliorer la qualité de ses projets. Nous avons réalisé un audit sur plusieurs projets de l’entreprise afin d’identifier comment éviter l’échec des projets: aucune conclusion définitive n'en a été tirée. Cependant, il a mis en lumière le besoin d’améliorer l’utilisation des tests. Effectivement, tester chaque partie du code est requis pour éviter l’échec du projet. Dans l’industrie, notamment à Worldline, l’automatisation des tests a commencé dans le but de maîtriser le comportement des applications. Mais, exécuter tous les tests après un changement peut être une coûter plusieurs heures. Le retour sur le code changé est retardé et le développeur perd du temps pour découvrir les potentiels bogues. La solution généralement proposée dans la littérature consiste à réduire le nombre de tests à lancer en sélectionnant seulement ceux relatifs aux derniers changements effectués. L’approche sélectionne un jeu de tests réduit et approprié qui détectera de potentielles régressions dans l’application. Chaque approche de sélection de tests a besoin d’être étudiée dans le contexte de Worldline et adaptée en conséquence pour convenir aux habitudes des développeurs. Avant d’intégrer une telle approche, une étude a été faite pour connaître les habitudes actuelles des développeurs vis-à-vis de la sélection de tests. Grâce à cette étude, nous avons développé un outil pour les développeurs visant à effectuer la sélection des tests. Le but est aussi d’étudier l’impact de cet outil sur leur comportement. Nous espérons que cette approche de sélection de tests apportera des changements dans leur processus de développement
Worldline, a major IT company, has to increase the quality of its projects. We performed an audit of several projects of the company to identify how to avoid project failure: no final conclusion has been drawn. However, it highlighted a need to enhance testing usage. To test every piece of code is compulsory to avoid project failure. In industry and more specifically in Worldline, automation of tests has begun to ensure the proper behavior of their applications. But, ensuring the execution of all tests after a change can be a costly operation requiring several hours. Feedback on the changed code is delayed and developer has to spent time to discover the potential bugs. The solution generally proposed in literature consists in reducing the number of tests to run by selecting only the ones related to the last changes made by the developer. The approach selects a suitable and small set of tests to detect potential regression in the application behavior.These approaches need to be studied in the context of Worldline and consequently adapted to suit developers’ habits. Before integrating such an adapted test selection approach, a study of the testing behavior of the developers has been done to get their current test selection usage. Based on the study of the Worldline environment, we developed a tool for the developers aiming to perform test selection.The goal is also to study the impact of this tool on their behavior. We hope that the test selection approach that is packaged in a tool adapted to the Worldline developers will bring a change in their developmentprocess
APA, Harvard, Vancouver, ISO, and other styles
45

Danglot, Benjamin. "Amplification automatique de tests unitaires pour DevOps." Thesis, Lille 1, 2019. http://www.theses.fr/2019LIL1I069/document.

Full text
Abstract:
Au cours des dernières années, les tests unitaires sont devenus un élément essentiel de tout projetlogiciel sérieux afin de vérifier son bon fonctionnement.Cependant, les tests sont fastidieux et coûteux pour l'industrie: il est difficile d'évaluer le retour surinvestissement.Pour surmonter ce problème, la recherche étudie l'automatisation de la création de tests.Même si ces suites de tests générées automatiquement ont une très bonne qualité, il existe toujours desobstacles à l'adoption de telles techniques par l'industrie.Cela s'explique par les difficultés à comprendre, intégrer et gérer la suite de tests générée.L'objectif de cette thèse est de remédier à ces difficultés en proposant une nouvelle technique quiproduit des nouveaux tests basés sur les tests existants. Cette technique s'appelle "amplification detests". Par construction, ces nouveaux tests sont donc proches des tests écrits par des humains, et doncsont faciles à comprendre, à intégrer et à gérer. Cette approche est implémentée sous forme d'un outilappelé DSpot
In recent years, unit testing has become an essential part of any serious software project to verify itsproper functioning.However, the tests are tedious and expensive for the industry: it is difficult to evaluate the return oninvestment.To overcome this problem, the research is investigating the automation of test creation.Although these automatically generated test suites are of high quality, there are still barriers to theindustry adoption of such techniques.This is because of the difficulty in understanding, integrating, and managing the generated test suite.The objective of this thesis is to overcome these difficulties by proposing a new technique thatproduces new tests based on existing tests. This technique is called "test amplification". Byconstruction, these new tests are close to the tests written by humans, and therefore are easy tounderstand, integrate and manage. This approach is implemented as a tool called DSpot
APA, Harvard, Vancouver, ISO, and other styles
46

Le, Louarn Catherine. "Étude et réalisation d’un outil de simulation et de test pour le logiciel temps réel." Compiègne, 1986. http://www.theses.fr/1986COMPI224.

Full text
Abstract:
Le test de logiciel temps réel tend à mettre en évidence des erreurs de traitement, le non respect de spécifications fonctionnelles ou de contraintes liées au code. Dans une optique « analyse de sûreté », ce test doit pouvoir être effectué indépendamment du matériel cible (dont l’acquisition n’est pas envisageable) mais doit cependant permettre d’étudier le comportement du logiciel testé en présence de défaillances simulées du matériel. Le test est utile au long des phases de développement, de validation et de maintenance d’un produit. Nous présentons ici un outil, appelé OST, qui simule l’exécution du code et le comportement de son environnement logiciel et matériel. L’exécution du test est surveillée et de nombreuses informations sont collectées automatiquement. Dans ce mémoire, nous présentons les mécanismes et objets internes qui régissent le fonctionnement de l’outil. Ensuite nous décrivons les moyens dont dispose l’utilisateur pour construire les jeux d’essais et l’environnement du logiciel sous-test. Nous définissons les moyens interactifs mis à sa disposition. Enfin la réalisation d’un prototype de l’outil est présentée ainsi que les essais d’utilisation qui ont été faits.
APA, Harvard, Vancouver, ISO, and other styles
47

Ahmady, Simab Kianoosh. "Un système de test pour systèmes répartis utilisant le logiciel standard CORBA A CORBA-based system for testing distributed systems." Sherbrooke : Université de Sherbrooke, 2004.

Find full text
APA, Harvard, Vancouver, ISO, and other styles
48

Rollet, Antoine Fouchal Hacène. "Test de robustesse des systèmes temps-réel thèse pour le doctorat en sciences spécialité Informatique /." Reims : S.C.D. de l'Université, 2005. http://scdurca.univ-reims.fr/exl-doc/GED00000108.pdf.

Full text
APA, Harvard, Vancouver, ISO, and other styles
49

Lussier, Guillaume. "Test guidé par la preuve : Application à la vérification d'algorithmes de tolérance aux fautes." Toulouse, INSA, 2004. http://www.theses.fr/2004ISAT0042.

Full text
Abstract:
Nos travaux étudient la conception du test en complément de preuves : l'objectif est de définir des critères de sélection de test qui ciblent les lacunes de ces preuves. Le champ d'application proposé est la vérification d'algorithmes de tolérance aux fautes. Les preuves considérées peuvent être des démonstrations informelles, publiées dans la littérature, ou des preuves formelles inachevées. Dans le premier cas, nous définissons une méthode basée sur une reformulation du discours informel sous forme d'un arbre de preuve. L'arbre offre une représentation de l'articulation logique de la démonstration, ainsi qu'un support pour son analyse pas à pas. La faisabilité et l'efficacité du test guidé par la preuve sont évaluées expérimentalement sur deux exemples d'algorithmes incorrects : un algorithme d'ordonnancement de tâches, et un algorithme d'appartenance de groupe. Les résultats montrent que l'identification des lacunes de la preuve peut s'avérer efficace pour guider le test, sous réserve que l'analyse de l'arbre ne mette pas en évidence un manque de rigueur affectant l'ensemble de la démonstration. Dans le cas de preuves formelles, nous reprenons le principe d'un test basé sur l'arbre de preuve. L'établissement d'un lien entre les lemmes non prouvés et des sous-espaces d'entrée de test peut alors être plus problématique que précédemment. L'étude expérimentale d'un autre algorithme d'appartenance de groupe, partiellement prouvé avec le système PVS, montre néanmoins que, lorsqu'un lien est possible, cette information peut s'avérer pertinente pour guider le test
Our work studies the design of testing to supplement correctness proofs: the goal is to define test selection criteria which focus on the weak parts of the proof. The proposed field of application is the verification of fault-tolerance algorithms. The target proofs can be informal demonstrations, published in the literature, or partial formal proofs. In the first case, we define a method based on the reformulation of the informal discourse as a proof tree. This tree offers a representation of the logical structure of the demonstration, and a support for its step by step analysis. The feasibility and efficiency of proof guided testing are experimentally assessed using two examples of flawed algorithms: a task scheduling algorithm, and a group membership algorithm. The results show that identification of the weak parts of the proof can be effective to guide testing, provided that the tree analysis does not reveal a lack of rigor affecting the whole demonstration. In the case of formal proofs, we retain the principle of testing based on the proof tree. Establishing a link between unproved lemmas and subspaces of the test input domain can be more difficult than previously. Still, the experimental study of another group membership algorithm, partially proved with the PVS system, shows that, if a link can be established, this information can be relevant to guide testing
APA, Harvard, Vancouver, ISO, and other styles
50

Bouquard, Jean-Louis. "Etude des rapports entre grammaires attribuees et programmation logique : application au test d'occurrence et a l'analyse statique." Orléans, 1992. http://www.theses.fr/1992ORLE2009.

Full text
Abstract:
La relation entre programmation logique et grammaires attribuees est reprise de travaux precedents et adaptee de maniere a etre utilisee par la suite. Une premiere application concerne le test d'occurrnce. Une nouvelle propriete des annotations propres est etablie et un algorithme polynomial de determination de ces annotations est elabore. Ceci fournit un test efficace d'appartenance a une large classe de programmes non sujets au test d'occurence (nsto). Puis, une amelioration supplementaire est obtenue par une methode basee sur une transformation de programme. Ensuite, on effectue une comparaison entre, d'une part, l'execution de prolog par l'intermediaire de la machine abstraite de warren et, d'autre part, l'evaluation des attributs par le systeme fnc2. Il en ressort qu'un programme logique peut beneficier des optimisations elaborees sur les evaluateurs d'attributs s'il possede une propriete dite de decoration. Ceci nous amene a introduire la notion d'arguments decisifs d'un programme logique. Un algorithme polynomial de determination de ces arguments est construit, ce qui apporte la possibilite d'applications pratiques
APA, Harvard, Vancouver, ISO, and other styles
We offer discounts on all premium plans for authors whose works are included in thematic literature selections. Contact us to get a unique promo code!

To the bibliography