Approche Agile du Model-Based Testing pour les tests fonctionnels des SI d’entreprise - TEL - Thèses en ligne Accéder directement au contenu
Thèse Année : 2021

Agile approach of Model-Based Testing for functional testing of enterprise IT systems

Approche Agile du Model-Based Testing pour les tests fonctionnels des SI d’entreprise

Résumé

The digital and Agile transformation of large organizations is leading to a need to transform software testing practices in depth. Putting IT system developments into production with increasingly short delays, on increasingly complex systems, challenges the traditional practices of functional testing based on a strong manual component (analysis, design and execution).New approaches and new test tools must therefore adapt to the short iterations of Agile, as well as to the expansion of the systems developed, composed of a set of products in Agile at scale contexts, while ensuring the quality of the systems in production.Adapting to Agile means that approaches and tools will need to be effective in the conception and implementation of tests for different functional coverage objectives. They will have to allow testing a small set of new user stories while keeping the end-to-end test repository of the main application use cases operational. This is in order to manage the evolution of the system as a whole and to extend the repository of automated regression tests.In terms of execution, the approaches and tools will have to support both manual and automated test execution with seamless adaptation from the first to the second. Systematic execution of all manual tests is not possible, hence the strong need to automate tests. The implementation of automation processes is a key point in the success of projects, but this activity currently remains complex and expensive. It allows to guarantee the quality of the application through the different iterations, especially in Agile contexts, where the deliveries are regular and/or the time to test manually increases with the sprints. Automating a set of test cases reduces the burden of manual testing and facilitates the detection of regressions.Another challenge for software testing in the Agile transformation will be to manage to maintain the growing manual test suites over iterations. These test suites are usually described in natural language and, over time, become disorganized and more difficult to use and maintain. There is therefore a real challenge in proposing approaches and tools to maintain these test suites in order to make them more usable and easier to maintain, in contexts where it is necessary to be able to act quickly and efficiently.To meet these needs, this thesis proposes an approach called ALME (ALME - Agile Lightweight Model-Based Testing for Enterprise IT) which is based on the fundamental concepts of Model-Based-Testing, redesigned to meet the challenges of testing large information systems in the context of an iterative and incremental software development lifecycle. In particular, this overhaul focuses on the articulation between business process modeling and business rule management for the generation of functional tests.The contributions of these researches cover the phases of analysis, conception and implementation of functional tests and are the following:-Extending the scientific state of the art in Model-Based-Testing, on test automation, refactoring, testing in Agile and Agile at scale.-Extend the state of the art on Agile testing practices at scale through a qualitative and quantitative analysis of current practices and solutions to problems encountered by software development teams.-Define and implement the ALME approach.-Define and implement an automation management approach.-Define and implement a manual test suite refactoring approach.These researches were conducted within the FEMTO-ST Institute - UMR 6174 and the Sogeti company within the context of a CIFRE thesis started in November 2017.
La transformation digitale et Agile des grandes organisations induit un besoin de transformer en profondeur les pratiques du test logiciel. La mise en production des évolutions des systèmes informatiques avec des délais de plus en plus courts, sur des systèmes de plus en plus complexes, remet en cause les pratiques traditionnelles du test fonctionnel fondées sur une forte composante manuelle (analyse, conception et exécution).Les nouvelles approches et les nouveaux outils de test doivent s'adapter aux courtes itérations de l'Agile, ainsi qu’à l'expansion des systèmes développés, composés d’un ensemble de produits dans des contextes d’Agilité à l'échelle, tout en garantissant la qualité des systèmes en production.L'adaptation à l'Agilité signifie que les approches et outils devront être efficaces dans la conception et l’implémentation des tests pour différents objectifs de couverture fonctionnelles. Ils devront permettre de tester un petit ensemble de nouveaux récits utilisateurs tout en maintenant opérationnel le référentiel des tests de bout en bout reprenant les principaux cas d'utilisation des applications. Ceci de manière à gérer les évolutions du système et à étendre le référentiel des tests de régression automatisés.Du point de vue de l’exécution, les approches et outils devront supporter l'exécution de tests manuels et automatisés avec une adaptation transparente des premiers aux seconds. L’exécution systématique de l’ensemble des tests manuels n’est pas possible d’où la forte nécessité à automatiser les tests. La mise en place de processus d’automatisation est un point clé dans la réussite des projets, mais cette activité reste complexe et coûteuse. Elle permet de garantir la qualité de l’application à travers les différentes itérations, notamment dans les contextes Agile, ou les livraisons sont régulières et/ou le temps pour tester manuellement croît au fil des sprints. Automatiser un ensemble de cas de test permet d’alléger la charge de test manuel et facilite la détection de régressions.Un autre enjeu des tests logiciel dans la transformation Agile sera de parvenir à maintenir les suites de tests manuels grandissantes au fil des itérations. Ces suites de tests sont généralement décrites en langage naturel et, avec le temps, deviennent désorganisées et plus difficiles à utiliser et à maintenir. Il existe donc un réel défi à proposer des approches et des outils permettant de maintenir ces suites de tests afin de les rendre plus utilisables et plus faciles à maintenir.Pour répondre à ces besoins cette thèse propose une approche nommée ALME (ALME - Agile Lightweight Model-Based Testing for Enterprise IT) qui s'appuie sur les concepts fondamentaux du Model-Based-Testing (MBT, test à partir de modèles) refondés pour répondre aux enjeux du test des grands systèmes d'information dans le contexte d’un cycle de vie de développement logiciel itératif et incrémental. Cette refondation porte en particulier sur l'articulation entre la modélisation de processus métier et la gestion de règles métier pour le test pour la génération des tests fonctionnels.Les contributions de ces travaux de recherche couvrent les phases d'analyse, de conception et d’implémentation des tests fonctionnels et sont les suivantes :-Étendre l’état de l’art scientifique en MBT, sur l'automatisation des tests, le refactoring, le test dans l'Agilité et l'Agilité à l'échelle.-Étendre l'état de l'art sur les pratiques en test dans l'Agilité à l'échelle par une analyse qualitative et quantitative des pratiques actuelles et des solutions aux problèmes rencontrés par les équipes de développement du logiciel.Définir et mettre en application :-l'approche ALME.-une approche de gestion de l'automatisation.-une approche de refactoring des suites de tests manuels.Ces travaux de recherches ont été conduits au sein de l’institut FEMTO-ST,UMR 6174 et de la société Sogeti dans le cadre d’une thèse CIFRE démarrée en novembre 2017.
Fichier principal
Vignette du fichier
these_A_BERNARD_Elodie_2021.pdf (5.63 Mo) Télécharger le fichier
Origine : Version validée par le jury (STAR)

Dates et versions

tel-03324841 , version 1 (24-08-2021)

Identifiants

  • HAL Id : tel-03324841 , version 1

Citer

Elodie Bernard. Approche Agile du Model-Based Testing pour les tests fonctionnels des SI d’entreprise. Performance et fiabilité [cs.PF]. Université Bourgogne Franche-Comté, 2021. Français. ⟨NNT : 2021UBFCD013⟩. ⟨tel-03324841⟩
477 Consultations
470 Téléchargements

Partager

Gmail Facebook X LinkedIn More