Emploi
Assistant de carrière BÊTA J'estime mon salaire
Mon CV
Mes offres
Mes alertes
Se connecter
Trouver un emploi
TYPE DE CONTRAT
Emploi CDI/CDD
Missions d'intérim Offres d'alternance
Astuces emploi Fiches entreprises Fiches métiers
Rechercher

Utilisation des techniques d'apprentissage automatique pour la réalisation et la gestion des tests de régression // using machine learning techniques to create and manage regression tests

Valence
Alternance
Université Grenoble Alpes
Publiée le 31 mai
Description de l'offre

Topic description

Le principal problème du processus de test de régression vient du grand et croissant volume de tests. En effet, au fur et à mesure qu'une application évolue, le nombre de tests peut augmenter significativement. Ainsi, réexécuter systématiquement tous les tests peut vite devenir incompatible avec les délais de développement et de livraison d'une nouvelle version. Par ailleurs, l'effort et le coût peuvent être sans réel rapport avec la valeur ajoutée des tests. En effet, certains d'entre eux deviennent obsolètes d'une version de l'application à une autre ; d'autres perdent leur pouvoir de détection de défauts ou sont redondants. Conserver, à chaque version d'une application, un ensemble minimal de tests de régression (i.e. détectant toutes les fautes avec un minimum d'effort) est un objectif idéal que plusieurs travaux de recherche ont essayé d'approcher, notamment par l'intermédiaire de l'automatisation et la priorisation (TSP : Test Case Selection and Prioritization). Affecter des priorités aux tests de régression (Prioritization) peut se faire pour plusieurs raisons :
·pour améliorer le taux de détection des défauts d'une suite de tests, c'est-à-dire la probabilité de détecter des défauts plus tôt lors d'une série de tests de régression utilisant cette suite.
·pour augmenter plus rapidement la couverture du code testable dans le système soumis aux tests, ce qui permettrait de satisfaire plus tôt le critère de couverture de code au cours du processus de test.
·pour renforcer leur confiance dans la fiabilité du système testé à un rythme plus soutenu.
·pour augmenter le taux de détection des défauts à haut risque par la suite de tests, afin de les repérer plus tôt dans le processus de test.
·pour augmenter les chances de détecter plus tôt, au cours du processus de test, les défauts liés à des modifications spécifiques du code.
L'apprentissage automatique a été utilisé pour améliorer ces techniques (ML-TSP : Machine Learning Test Selection and Prioritization) en se basant principalement sur des modèles issus de l'apprentissage par renforcement (RL), du regroupement par clusters, du classement et du traitement du langage naturel (NLP). Nous nous appuyons sur le travail de recherche réalisé dans le cadre d'une thèse soutenue récemment à l'université de Franche-Comté par F. Tamagnan sous la direction de Fabrice Bouquet. Elle exploite les traces d'exécution réelles d'une application en fouillant des logs. On peut ainsi en extraire des usages réels de l'application pour en choisir un sous-ensemble, optimal d'un point de vue de la « couverture de l'usage réel », que l'on peut dériver en des suites de tests. L'apprentissage automatique permet d'opérer un regroupement en clusters puis d'en choisir une suite par classe de test.
Dans le cadre de cette proposition du sujet de thèse, nous identifions quatre potentiels axes de recherche :
1.Le premier axe se base sur les 'patrons d'interaction' (patterns métier) : l'idée est de pouvoir utiliser ces patrons directement dans le processus d'apprentissage pour forcer la couverture de scénarios spécifiques pour dépasser la simple analyse statistique.
2.Le second axe vise à étudier les différentes pistes d'utilisation des patterns pour améliorer les modèles. Ainsi, on pourrait utiliser les capacités de compréhension contextuelle des Large Language Models (LLM) pour créer des 'embeddings' de traces plus riches que les méthodes traditionnelles (Word2Vec, Autoencoders), capturant ainsi mieux la sémantique métier.
3.Le troisième axe est l'étude de la transformation automatique des traces sélectionnées issues des méthodes précédentes en de scripts de test qui pourront être exécutés sur le système réel.
4.Le dernier axe cible la confiance sur les tests ainsi construits à travers la mise en place de métriques. Ces dernières peuvent mesurer la complétude – par exemple Usage Pattern Coverage (UPC) - pour identifier les 'trous' dans le référentiel actuel par rapport à l'usage réel.
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------------------------------------------------------------

The main problem with the regression testing process stems from the large and growing volume of tests. Indeed, as an application evolves, the number of tests can increase significantly. Consequently, systematically re-running all tests can quickly become incompatible with the development and delivery timelines for a new version. Furthermore, the effort and cost involved may bear little relation to the added value of the tests. Indeed, some of them become obsolete from one version of the application to the next; others lose their ability to detect defects or are redundant. Maintaining, for each version of an application, a minimal set of regression tests (i.e. detecting all faults with minimal effort) is an ideal objective that several research projects have sought to address, notably through automation and prioritisation (TSP: Test Case Selection and Prioritisation). Prioritising regression tests can be done for several reasons:
· to improve the defect detection rate of a test suite, i.e. the probability of detecting defects earlier during a series of regression tests using that suite.
· to increase the coverage of testable code in the system under test more rapidly, thereby enabling the code coverage criterion to be met earlier in the testing process.
· to build confidence in the reliability of the system under test at a faster pace.
· to increase the defect detection rate for high-risk defects by the test suite, so that they can be identified earlier in the testing process.
· to increase the chances of detecting defects related to specific code changes earlier in the testing process.
Machine learning has been used to improve these techniques (ML-TSP: Machine Learning Test Selection and Prioritisation), drawing primarily on models from reinforcement learning (RL), clustering, classification and natural language processing (NLP). We draw on research carried out as part of a thesis recently defended at the University of Franche-Comté by F. Tamagnan under the supervision of Fabrice Bouquet. It analyses the actual execution traces of an application by mining logs. This allows us to extract real-world usage patterns from the application and select a subset that is optimal in terms of ‘real-world usage coverage', which can then be derived into test suites. Machine learning enables clustering, followed by the selection of a test suite per test class.
In this new thesis topic, we identify four potential approaches:
1. The first approach is based on 'interaction patterns' (business patterns): the idea is to be able to use these patterns directly in the learning process to ensure that specific scenarios are covered, thereby going beyond simple statistical analysis.
2. The second approach could explore different ways of using these patterns to improve the models. For example, we could use the contextual understanding capabilities of Large Language Models (LLMs) to create richer “embeddings” of traces than traditional methods (Word2Vec, Autoencoders), thereby better capturing business semantics.
3.The third approach involves the study of the automatic transformation of selected traces from the previous methods into test scripts that can be executed on the actual system.
4. Finally, one can focus on ensuring confidence in the tests constructed in this way through the implementation of metrics. These metrics can measure completeness – for example, Usage Pattern Coverage (UPC) – to identify ‘gaps' in the current repository compared to actual usage.
------------------------------------------------------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Début de la thèse : 01/10/

Funding category

Funding further details

Concours allocations

Postuler
Créer une alerte
Alerte activée
Sauvegardée
Sauvegarder
Voir plus d'offres d'emploi
Estimer mon salaire
JE DÉPOSE MON CV

En cliquant sur "JE DÉPOSE MON CV", vous acceptez nos CGU et déclarez avoir pris connaissance de la politique de protection des données du site jobijoba.com.

Offres similaires
Emploi Valence
Emploi Drôme
Emploi Rhône-Alpes
Intérim Valence
Intérim Drôme
Intérim Rhône-Alpes
Accueil > Emploi > Utilisation des techniques d'apprentissage automatique pour la réalisation et la gestion des tests de régression // Using machine learning techniques to create and manage regression tests

Jobijoba

  • Conseils emploi
  • Avis Entreprise

Trouvez des offres

  • Emplois par métier
  • Emplois par secteur
  • Emplois par société
  • Emplois par localité
  • Emplois par mots clés
  • Missions Intérim
  • Emploi Alternance

Contact / Partenariats

  • Contactez-nous
  • Publiez vos offres sur Jobijoba
  • Programme d'affiliation

Suivez Jobijoba sur  Linkedin

Mentions légales - Conditions générales d'utilisation - Politique de confidentialité - Gérer mes cookies - Accessibilité : Non conforme

© 2026 Jobijoba - Tous Droits Réservés

Les informations recueillies dans ce formulaire font l’objet d’un traitement informatique destiné à Jobijoba SA. Conformément à la loi « informatique et libertés » du 6 janvier 1978 modifiée, vous disposez d’un droit d’accès et de rectification aux informations qui vous concernent. Vous pouvez également, pour des motifs légitimes, vous opposer au traitement des données vous concernant. Pour en savoir plus, consultez vos droits sur le site de la CNIL.

Postuler
Créer une alerte
Alerte activée
Sauvegardée
Sauvegarder