Un test de régression, ou test de non-régression, est un test ayant pour but de détecter les régressions introduites dans un logiciel après un changement effectué dans celui-ci.
Une régression est un défaut qui se produit après une modification d'un logiciel lorsque des fonctionnalités existantes ne sont plus réalisées aussi bien qu'avant. Les régressions peuvent apparaitre à l'occasion de n'importe quel changement établi dans un logiciel : corrections de bogues, ajout de nouvelles fonctionnalités, modification de fonctionnalités existantes ou modification d'un composant externe au logiciel lui-même (nouvelle version du système, de l'interface graphique, d'un compilateur ou d'une bibliothèque tierce qui interviennent dans son fonctionnement). Il est donc intéressant d'être en mesure de repérer les régressions, par le biais de tests automatisés ou non, avant la mise à disposition de la nouvelle version du logiciel auprès des utilisateurs.
Un test de régression est un ensemble de tests d’un programme préalablement testé, après une modification, pour s’assurer que des défauts n’ont pas été introduits ou découverts dans des parties non modifiées du logiciel. Ces tests sont effectués quand le logiciel ou son environnement est modifié.
L'intérêt principal de ces tests est de limiter les anomalies relevées lors de la recette de l'application, voire, ce qui est pire, une fois l'application mise à disposition des utilisateurs. Ils viennent compléter les tests unitaires et les tests d'intégration en amont des tests de recette.
Même si le changement effectué sur le système est mineur, il est prudent de couvrir le plus de cas possibles, afin d'assurer que le reste du logiciel fonctionne toujours de la même manière. Les tests de régression représentent de nombreux scénarios et peuvent donc être fastidieux à rejouer.
Comme l'a rappelé Edsger Dijkstra,
Des programmes spécialisés permettent d'automatiser ces tests.
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.
Memory corruption and type safety flaws dominate the threat landscape. We will approach current research
from three dimensions: sanitization (finding flaws through runtime monitors); fuzzing (testing
We learn and apply software engineering principles to program projects in Python. Projects cover problems in life sciences, and will be developed over the course of the semester.
A foundational course on the science and practice of launching new ventures. The purpose is to study and experience the first stages of the entrepreneurial process: from the identification of promisin
En programmation informatique, le test unitaire (ou « T.U. », ou « U.T. » en anglais) est une procédure permettant de vérifier le bon fonctionnement d'une partie précise d'un logiciel ou d'une portion d'un programme (appelée « unité » ou « module »). Dans les applications non critiques, l'écriture des tests unitaires a longtemps été considérée comme une tâche secondaire. Cependant, les méthodes Extreme programming (XP) ou Test Driven Development (TDD) ont remis les tests unitaires, appelés « tests du programmeur », au centre de l'activité de programmation.
In software engineering, a software development process is a process of planning and managing software development. It typically involves dividing software development work into smaller, parallel, or sequential steps or sub-processes to improve design and/or product management. It is also known as a software development life cycle (SDLC). The methodology may include the pre-definition of specific deliverables and artifacts that are created and completed by a project team to develop or maintain an application.
Test-Driven Development (TDD), ou développement piloté par les tests en français, est une méthode de développement de logiciel qui consiste à concevoir un logiciel par des itérations successives très courtes (ou petits pas), telles que chaque itération est accomplie en formulant un sous-problème à résoudre sous forme d'un test avant d'écrire le code source correspondant, et où le code est continuellement remanié dans une volonté de simplification. À l'origine, il s'agissait simplement d'écrire les tests avant de coder, et cette méthode s'appelait le Test-First Design.
Explore les stratégies de test automatisées, y compris la couverture du code et diverses techniques de test, pour assurer un développement logiciel fiable.
Cholera, caused by the bacterium Vibrio cholerae, has affected humanity throughout history and still impacts millions of people every year. Apart from being a human pathogen, V. cholerae is a common member of the aquatic environment. Due to this natural re ...
EPFL2024
,
We propose a local, non -intrusive model order reduction technique to accurately approximate the solution of coupled multi -component parametrized systems governed by partial differential equations. Our approach is based on the approximation of the boundar ...
The rise of robotic body augmentation brings forth new developments that will transform robotics, human-machine interaction, and wearable electronics. Extra robotic limbs, although building upon restorative technologies, bring their own set of challenges i ...