69 votes

Que signifie le test de régression ?

Quelqu'un peut-il expliquer le mot "test de régression" de manière compréhensible ?

106voto

Igor Zevaka Points 32586

Le test de régression est un test effectué pour s'assurer que la fonctionnalité qui fonctionnait auparavant fonctionne toujours, après des modifications apportées ailleurs dans le système. Article de Wikipedia explique assez bien ce que c'est.

Vos tests unitaires sont automatiquement des tests de régression, et c'est l'un de leurs plus grands avantages. Une fois ces tests écrits, ils seront exécutés à l'avenir, chaque fois que vous ajouterez une nouvelle fonctionnalité ou modifierez une fonctionnalité existante. Vous n'avez pas besoin d'écrire explicitement des tests de régression.

9 votes

L'objectif des tests de régression est de fournir une assurance générale qu'aucune erreur supplémentaire n'a été introduite lors de la résolution d'autres problèmes. -- du wiki.

13 votes

-1 Cette définition est extrêmement large. Chaque Le test permet de s'assurer que la fonctionnalité fonctionne toujours - c'est l'objectif général des tests. Les tests de régression sont des tests écrits pendant le débogage pour s'assurer que le code ne régresse pas.

9 votes

@Steve - Je vous donne +1 pour votre commentaire "Les tests de régression sont des tests écrits pendant le débogage pour s'assurer que le code ne régresse pas" - pour être merveilleusement circulaire et non spécifique.

53voto

Carl Manaster Points 23696

Malgré la vieille plaisanterie, le "Congrès" n'est pas l'opposé du "progrès" ; le "recul" l'est. Si votre code régresse, c'est qu'il "recule", ce qui signifie généralement qu'un mauvais comportement qu'il avait autrefois, et que vous avez corrigé, est revenu. Une "régression" est le retour d'un bogue (bien qu'il puisse y avoir d'autres interprétations). Un test de régression est donc un test qui valide que vous avez corrigé le bogue et que vous exécutez périodiquement pour vous assurer que votre correction est toujours en place et fonctionne toujours.

10 votes

+1 Génial avec une explication de la signification réelle de la formulation du terme !

0 votes

C'est juste. stackoverflow.com/questions/520064/ a également une bonne explication.

0 votes

Ne pouvons-nous pas dire que nous avons également régressé (reculé) lorsqu'une fonctionnalité a disparu ou est cassée ?

1voto

parag.rane Points 21

Le test de régression est une partie de l'activité de test, qui peut commencer après
Une modification a été apportée pour vérifier la fiabilité de chaque logiciel publié.
Ce n'est rien d'autre qu'une analyse d'impact pour vérifier si cela n'affecte pas des éléments critiques.
du logiciel.

1voto

Justin Niessner Points 144953

Au cours d'un test de régression, les testeurs parcourent votre application en testant les fonctionnalités qui étaient connues pour fonctionner dans la version précédente.

Ils recherchent spécifiquement les parties de l'application qui n'ont peut-être pas été directement modifiées, mais qui dépendent du code qui a été modifié (et qui pourraient avoir des bogues résiduels).

Ces bogues (ceux causés par des bogues dans le code dépendant, même s'ils fonctionnaient auparavant) sont connus sous le nom de régressions (parce que la fonctionnalité fonctionnait correctement et présente maintenant un bogue... et a donc régressé).

0voto

Stellios Points 634

http://en.wikipedia.org/wiki/Regression_testing

En gros, testez le code que vous avez mis à jour pour vous assurer que vous n'avez pas introduit de nouveaux bogues et que la fonctionnalité fonctionne toujours comme avant.

0 votes

Mais si le code passe tous les tests que j'ai écrits avant de les écrire, ne devrait-il pas être sûr ? pourquoi dois-je encore écrire des tests de régression ?

1 votes

Non, les tests unitaires sont automatiquement des tests de régression :)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X