
Шта је регресијско тестирање?
ТЕСТИРАЊЕ РЕГРЕСИЈЕ дефинише се као врста тестирања софтвера да би се потврдило да недавна промена програма или кода није негативно утицала на постојеће функције.
Испитивање регресије није ништа друго до пуни или делимични избор већ извршених тест случајева који се поново извршавају како би се осигурало да постојеће функционалности раде у реду.
Ово тестирање се врши како би се осигурало да промене новог кода не би имале нежељене ефекте на постојеће функционалности. Осигурава да стари код и даље ради када се изврше најновије промене кода.
У овом упутству ћемо научити
- Потреба за регресионим испитивањем
- Како се врши регресијско тестирање
- Избор тест случајева за регресијско тестирање
- Алати за тестирање регресије
- Испитивање регресије и управљање конфигурацијом
- Разлика између поновног тестирања и регресивног тестирања
- Изазови у регресионом тестирању
- Практична примена примера тестирања регресије са видео записом
Потреба за регресионим испитивањем
Потреба регресије тестирање , углавном се јавља кад год постоји потреба да промените шифру и морамо да тестирамо да ли је модификовани код утиче на други део софтверске апликације или не. Штавише, потребно је регресијско тестирање када се нова функција дода софтверској апликацији и за отклањање недостатака као и за отклањање проблема са перформансама.
Како се врши регресијско тестирање
Да бисмо извршили поступак тестирања регресије , прво морамо да отклонимо грешке у коду да бисмо идентификовали грешке. Једном када су грешке идентификоване, извршене су потребне промене да би се то исправило, а затим се врши регресијско тестирање избором релевантних тест случајева из пакета тестова који покрива и измењене и погођене делове кода.
Одржавање софтвера је активност која укључује побољшања, исправке грешака, оптимизацију и брисање постојећих карактеристика. Ове модификације могу проузроковати неправилан рад система. Стога је потребно регресијско тестирање. Испитивање регресије може се извршити коришћењем следећих техника:


Поново тестирај све
- Ово је један од метода за регресијско тестирање у којем би сви тестови у постојећем испитном сегменту или пакету требали бити поново изведени. Ово је врло скупо, јер захтева огромно време и ресурсе.
Избор регресионог теста
Избор регресионог теста је техника у којој се извршавају неки одабрани тестови из пакета за тестирање да ли модификовани код утиче на софтверску апликацију или не. Тест случајеви су подељени у два дела, тест случајеви за вишекратну употребу који се могу користити у даљим циклусима регресије и застарели тест случајеви који се не могу користити у следећим циклусима.
Одређивање приоритета тест случајева
- Дајте приоритет тестним случајевима у зависности од пословног утицаја, критичних и често коришћених функционалности. Избор тест случајева на основу приоритета у великој мери ће смањити пакет регресионих тестова.
Избор тест случајева за регресијско тестирање
Из индустријских података утврђено је да је добар број кварова које су пријавили купци последица ласт-минуте исправки грешака које су створиле нежељене ефекте, па је одабир Тест Цасе-а за регресијско тестирање уметност и није тако лако. Ефективни тестови регресије могу се обавити избором следећих тест случајева -
- Тест случајеви који имају честе недостатке
- Функционалности које су корисницима видљивије
- Тест случајеви који потврђују суштинске карактеристике производа
- Тест случајеви функционалности који су претрпели све више и најновије промене
- Сви случајеви испитивања интеграције
- Сви сложени тест случајеви
- Примери испитивања граничне вредности
- Узорак успешних тест случајева
- Узорак случајева неуспеха
Алати за тестирање регресије
Ако се софтвер подвргне честим променама, трошкови регресијског тестирања ескалирају. У таквим случајевима ручно извршавање тест случајева повећава време извршавања теста као и трошкове. Аутоматизација регресионих тест случајева је паметан избор у таквим случајевима. Обим аутоматизације зависи од броја тест случајева који остају поново употребљиви за узастопне регресионе циклусе.
Следе најважнији алати који се користе за функционално и регресијско испитивање у софтверском инжењерству:
Селен : Ово је алат отвореног кода који се користи за аутоматизацију веб апликација. Селен се може користити за регресијско тестирање засновано на прегледачу.
Куицк Тест Профессионал (КТП) : ХП Куицк Тест Профессионал је аутоматизовани софтвер дизајниран за аутоматизацију функционалних и регресионих тест случајева. За аутоматизацију користи језик ВБСцрипт. То је алат заснован на подацима, заснован на кључним речима.
Рационални функционални испитивач (РФТ) : ИБМ-ов рационални функционални испитивач је Јава алат који се користи за аутоматизацију тест случајева софтверских апликација. Ово се првенствено користи за аутоматизацију регресионих тест случајева, а такође се интегрише са Ратионал Тест Манагер.
Испитивање регресије и управљање конфигурацијом
Управљање конфигурацијом током тестирања регресије постаје императив у агилним окружењима где се код континуирано мења. Да бисте осигурали ефикасне регресионе тестове, придржавајте се следећег:
- Код који се тестира на регресији треба да буде под алатом за управљање конфигурацијом
- Током фазе теста регресије не смеју бити дозвољене промене. Код за регресиони тест мора бити заштићен од промена програмера.
- База података која се користи за регресијско тестирање мора бити изолована. Ниједна промена базе података не сме бити дозвољена
Разлика између поновног тестирања и поновног тестирања:
Поновно тестирање значи поновно тестирање функционалности или грешке како би се осигурало да је код фиксиран. Ако није отклоњен, дефект треба поново отворити. Ако се поправи, дефект се затвара.
Регресијско тестирање значи тестирање ваше софтверске апликације када се подвргне промени кода како би се осигурало да нови код није утицао на друге делове софтвера.
Такође, овде погледајте комплетну листу разлика.
Изазови у регресионом тестирању:
Следе главни проблеми са тестирањем за регресијско тестирање:
- Са узастопним регресионим вожњама, испитни пакети постају прилично велики. Због временских и буџетских ограничења, читав пакет за регресијски тест не може се извршити
- Минимизирање скупа тестова уз постизање максималног обухвата тестом остаје изазов
- Одређивање учесталости тестова регресије, тј. Након сваке модификације или сваке надоградње верзије или након гомиле исправки грешака, представља изазов.
Практична примена примера тестирања регресије са видео записом
Кликните овде ако видео снимку није доступан
Закључак:
Учинковита стратегија регресије, штеди организације и времена и новца. Према једној од студија случаја у банкарском домену, регресија штеди до 60% времена у исправкама грешака (које би регресијски тестови уловили) и 40% у новцу