Défense de mémoire de Lucas Berg
Improving automated unit test generation for machine learning libraries using structured input data
Date : 17/06/2024 10:30 - 17/06/2024 12:00
Lieu : Salle académique - Informatique
Orateur(s) : Lucas Berg
Organisateur(s) : Benjamine Lurquin
Le domaine de la génération automatique de test s'est considérablement développé ces dernières années pour réduire les coûts des tests logiciels et pour trouver des bugs. Cependant, les techniques de génération automatique de tests pour les librairies de machine learning produisent encore des tests de faible qualité et les articles sur le sujet ont tendance à travailler en Java, alors que la communauté du machine learning a tendance à travailler en Python. Certains articles ont tenté d'expliquer les causes de ces tests de mauvaise qualité et de rendre possible la génération automatique de tests en Python mais ils sont encore assez récents et donc aucune étude n'a encore essayé d'améliorer ces tests en Python. Dans ce mémoire, nous allons introduire 2 améliorations pour Pynguin, un outil de génération automatique de tests pour Python, afin de générer de meilleurs tests pour les librairies de machine learning en utilisant des inputs structurés et de mieux gérer les crashs provenant des modules d'extension C. Sur base d'un ensemble de 7 modules, nous montrerons que notre approche a permis de couvrir des lignes de code inaccessibles avec l'approche traditionnelle et de générer des tests révélant des erreurs. Nous espérons que notre approche servira de point de départ pour intégrer plus facilement les connaissances des testeurs sur les inputs des programmes dans les outils de génération automatique de tests, et pour créer des outils qui trouveront davantage de bugs causant des crashs.
Mots-clés: Testing machine learning libraries, Search-based software testing, Test case generation, Grammar-based fuzzing, Crash detection
Contact :
Benjamine Lurquin
Télecharger :
vCal