Testowanie regresyjne to testowanie modułów oprogramowania z poprzednich wydań programu w celu wykrycia nowych błędów stworzonych przez programistę. Zautomatyzowane testowanie regresyjne odnosi się do procesu, w którym oprogramowanie komputerowe jest testowane regresywnie w sposób zautomatyzowany przy użyciu skryptów testowych. Ten rodzaj testowania regresji jest procesem, w którym skrypty testowe są uruchamiane w kodzie oprogramowania w celu sprawdzenia, czy nowsze wersje kodu nie wprowadziły żadnych problemów z poprzednimi wersjami.
Tworzenie oprogramowania to sztuka pisania kodu oprogramowania w celu wykonania zadania w sposób zautomatyzowany, co zwykle zwiększa produktywność osób lub organizacji. Proces tworzenia oprogramowania obejmuje cykl życia, który wymaga znacznych testów przed udostępnieniem oprogramowania do użytku publicznego. Testy te mogą stać się żmudne i powtarzalne, jeśli są wykonywane ręcznie, dlatego stworzono automatyczne testy regresji.
Testowanie jest kluczową funkcją dla całego procesu tworzenia oprogramowania, ponieważ ma na celu zapewnienie, że aplikacja spełnia potrzeby klientów. Testowanie aplikacji obejmuje cztery główne obszary, którymi są testowanie jednostkowe, testowanie integracji, testowanie funkcjonalne i testowanie wydajności. Automatyczne testowanie regresji to proces, w którym wcześniejsze testy dla tych obszarów testowych są ponownie testowane pod kątem kompletności.
Testowanie dowolnego komponentu oprogramowania wymaga stworzenia skryptów testowych. Skrypty testowe to instrukcje wykonywania testu, które zawierają wymagania dotyczące danych wejściowych i wyjściowych przypadku testowego. Każdy przypadek testowy jest wprowadzany do skryptu testowego w celu utworzenia pełnego zestawu testowego aplikacji.
Skrypty testowe można zautomatyzować, pisząc kod, który wykona instrukcje w przypadku testowym. Ta automatyzacja nie jest wymagana do testowania aplikacji, ale jest najlepszą praktyką, ponieważ zwiększa produktywność i zmniejsza ryzyko błędu ludzkiego podczas testowania. Automatyczne testowanie regresji to proces uruchamiania wcześniejszych automatycznych skryptów testowych w celu upewnienia się, że żaden nowy kod nie wprowadził błędów, które zostały wcześniej przetestowane i uniknięte.
Oprogramowanie można traktować jako złożony zestaw modułów, które opierają się na pełnej współpracy niezależnych funkcji zarówno sprzętu, jak i oprogramowania komputera. Bardzo ważne jest, aby każda iteracja kodu oprogramowania była całkowicie przetestowana, aby zapewnić, że współpraca między tymi modułami pozostanie nienaruszona. Zautomatyzowane testowanie regresji jest procesem najlepszych praktyk zapewniającym ciągłą interoperacyjność między komponentami dla każdej wersji oprogramowania.