Testarea de regresie este testarea modulelor software din versiunile anterioare ale unui program, în efortul de a descoperi noi erori create de dezvoltatorul de software. Testarea de regresie automată se referă la procesul prin care software-ul de calculator este testat de regresie într-o manieră automată prin utilizarea scripturilor de testare. Acest tip de testare de regresie este un proces în care scripturile de testare sunt rulate pe codul software în scopul de a valida faptul că versiunile mai noi de cod nu au introdus probleme cu versiunile anterioare.
Dezvoltarea software este arta de a scrie cod software pentru a finaliza o sarcină într-o manieră automată, ceea ce de obicei crește productivitatea persoanelor sau organizațiilor. Procesul prin care software-ul este dezvoltat include un ciclu de viață care necesită testare semnificativă înainte de a pune software-ul disponibil pentru consumul public. Această testare poate deveni plictisitoare și repetitivă dacă este făcută manual, motiv pentru care a fost creată testarea de regresie automată.
Testarea este o funcție critică pentru orice dezvoltare software, deoarece este concepută pentru a se asigura că aplicația software îndeplinește nevoile clienților. Testarea aplicațiilor software include patru domenii principale, care sunt testarea unitară, testarea integrărilor, testarea funcțională și testarea performanței. Testarea de regresie automată este procesul prin care testele anterioare pentru aceste zone de testare sunt retestate pentru a fi complete.
Testarea oricărei componente software necesită crearea de scripturi de testare. Scripturile de testare sunt instrucțiuni pentru finalizarea unui test, care includ cerințele pentru intrările și ieșirile unui caz de testare. Fiecare caz de testare este introdus într-un script de testare pentru a crea un cablaj de testare complet al unei aplicații.
Scripturile de testare pot fi automatizate prin scrierea unui cod care va executa instrucțiunile dintr-un caz de testare. Această automatizare nu este necesară pentru testarea unei aplicații, dar este o bună practică, deoarece crește productivitatea și reduce riscul de eroare umană în timpul testării. Testarea de regresie automată este procesul de rulare a scripturilor de testare automatizate anterioare pentru a se asigura că orice cod nou nu a introdus erori care au fost testate și evitate anterior.
Software-ul poate fi gândit ca un set complex de module care se bazează pe cooperarea completă a funcțiilor independente atât din hardware-ul cât și software-ul unui computer. Este esențial ca fiecare iterație a codului software să fie complet testată pentru a se asigura că colaborarea dintre aceste module rămâne intactă. Testarea automată de regresie este un proces de cea mai bună practică pentru a asigura că interoperabilitatea continuă între componente este realizată pentru fiecare versiune a software-ului.