Il non ha versiones revidite de iste pagina, dunque su qualitate forsan non ha essite verificate.

On appella proba de regression o test de regression (in anglese regression testing) cata typo de probas de software que tenta de discoperir errores, carentias de functionalitate, o divergentias functional a proposito del comportamento expectate del software, causate per le realisation de un cambio in le programma.

Proba de regression
instantia de: type of test[*]
subclasse de: software testing[*]


Iste typo de cambio pote esser a causa de non adequate practicas de controlo de versiones, manco de consideration super le area o contexto de production final e extensibilitate del error que ha essite corrigite (fragilitate del correction), o simplemente un consequentia del redesigno del application.

Dunque, in le majoritate del situationes del disveloppamento de software on considera un bon practica que quando on localisa e corrige un error, on scribe un proba que expone le error e on retorna a verificar regularmente post le cambios subsequente experimentate per le programma.

Il existe utensiles de[software que permitte deteger iste typo de errores de maniera partial o totalmente automatisate, le practica habitual in programmation extreme es que iste typo de probas se executa in cata un del passos del cyclo de vita del disveloppamento del software.

Typos de regression

modificar

Classification de area

modificar
Local
le cambios introduce nove errores.
Dismascate
le cambios revela errores previe.
Remote
Le cambios liga alcun partes del programma (modulo) e introduce errores in illo.

Classification temporal

modificar
Nove characteristica
le cambios realisate a proposito de nove functionalitates in le version introduce errores in altere novitate in le mesme version del software.
Characteristica preexistente
le cambios realisate a proposito de nove functionalitates introduce errores in functionalitate existente de previe versiones.

Como mitigar le riscos

modificar
  • Repetition complete e habitual del batteria de probas, manual o per medio de automatisation.
  • Repetition partial basate in traciabilitate e analyse de riscos.
  • Probas de cliente o usator:
    • Beta - distribution a clientes potential e actual de versiones beta.
    • Pilot - distribution a un subensemble ben definite e localisate.
    • Parallel - combinante le uso de ambe systemas.
  • Usar publicationes major. Le verification de nove functiones sovente coperi le functiones existente. Quante il ha plus de nove characteristicas in un publication, il habera un major nivello de probas de regression "accidental".
  • Pecias de emergentia - iste pecias es publicate immediatemente, e essera includite in publicationes futur de mantenimento.

On pote usar le probas de regression non solmente pro verificar le correction de un programma, sed sovente pro traciar le qualitate de exito de illo. Per exemplo in le designo de un compilator, le probas de regression debe traciar le mesura del codice, tempore de simulation, e le tempore de compilation del suites de proba. Quando on vole que un nove build appare, le processo de regression appare.

Citationes

modificar
  • "Etiam como consequentia del introduction de nove errores, pro le mantenimento del programma, plus probas del systema per sententia scribite es necessari que pro ulle altere programmation. In theoria, post cata correction on debe executar le lot complete de casos de proba ante executar contra le systema, pro assecurar se que illo non ha essite damnificate de forma obscur. In le practica, tal probas de regression debe approximar se a iste idea theoric, e es multo costose." -- Fred Brooks, The Mythical Man Month (p 122)

Vide etiam

modificar
 
Nota