Комплетан водич за тестирање регресије: Све што треба да знате



Овај чланак ће вам помоћи да стекнете детаљно знање о регресионом тестирању и објасниће зашто је важно укључити регресијско тестирање током тестирања.

Кад год се изда нови софтвер, потреба за тестирањем нове функционалности је очигледна. Међутим, подједнако је важно поново покренути старе тестове које је апликација претходно прошла. На тај начин можемо бити сигурни да нови софтвер неће поново уводити старе недостатке или стварати нове у њему. Ову врсту тестирања називамо као регресија тестирање. Кроз овај чланак истраживаћемо регресијско тестирањедетаљно. Ако сте нови у тестирању софтвера, обавезно прочитајте и .

Погледајмо теме обрађене у овом чланку:





Шта је регресијско тестирање?

„Тестирање претходно тестираног програма након модификације како би се осигурало да недостаци нису уведени или откривени у непромењеним деловима софтвера, као резултат извршених промена назива се регресионим тестирањем.“

сас програмирање увод уводни појмови

Регресијски тест је системски тест чија је главна сврха осигурати да мала промена у једном делу система не наруши постојећу функционалност негде другде у систему. Ако регресију сматрате ненамерном променом, онда је ова врста тестирања процес лова на те промене. Једноставно речено, све се састоји у томе да се старе грешке не врате да би вас прогањале. Омогућавапогледајте фиктивни пример који илуструје концепт.



Регресијско тестирањеЕк - Шта је регресијско тестирање - Едурека

Када додајете нови начин плаћања веб локацији за куповину, поново покрените старе тестове како бисте били сигурни да нови код није створио нове недостатке или поново увео старе.Регресијско тестирање је важно јер је без њега сасвим могуће у систем увести намераване поправке који стварају више проблема него што их решавају.

Предности регресивног тестирања

Спровођење регресионих тестовакористи компанијама на више начина, као што су:



  • Повећава шансу за откривање грешака изазваних променама софтвера и апликације
  • Може вам помоћи да рано ухватите недостатке и тако смањите трошкове њиховог решавања
  • Помаже у истраживању нежељених нежељених ефеката који су се могли појавити због новог оперативног окружења
  • Осигурава боље перформансе софтвера због ране идентификације грешака и грешака
  • Што је најважније, верификује да промене кода не враћају старе недостатке

Регресијско тестирање осигурава исправност софтвера тако да се најбоља верзија производа пусти на тржиште. Међутим, у стварном свету пројектовање и одржавање готово бесконачног низа регресионих тестова једноставно није изводљиво. Дакле, требали бисте знати када да примените регресијско тестирање.

Када применити регресијско тестирање?

Препоручује се да се изврши регресијско испитивање појаве следећих догађаја:

    • Када се додају нове функционалности
    • У случају захтева за промену
    • Када постоји исправка квара
    • Када постоје проблеми са перформансама
    • У случају промена окружења
    • Када постоји поправка закрпе

Следећи део овог чланка говори о различитим врстама регресионих испитивања.

Које су врсте регресивног тестирања?

Испитивање регресије врши се кроз неколико фаза испитивања. Из тог разлога постоји неколико врста регресионих испитивања. Неки од њих су следећи:

Јединствено тестирање: У јединственом тестирању када се праве промене кодирања за једну јединицу, испитивач, обично програмер одговоран за код - поново покреће све претходно положене јединичне тестове. У У окружења су уграђени аутоматизовани јединични тестови, што чини јединствено тестирање врло ефикасним у поређењу са другим врстама тестирања.

Прогресивно тестирање: Ова врста тестирања делује ефикасно када се изврше промене у спецификацијама софтвера / апликација, као и нове су дизајнирани.

Селективно испитивање: У селективном тестирању тестери користе подскуп тренутних тест случајева да би смањили трошкове поновног тестирања и напор. Тест јединица мора се поново покренути ако и само ако је промењен било који програмски ентитет који покрива.

Поновно тестирање свих тестирања: Ова врста стратегије тестирања укључује тестирање свих аспеката одређене апликације, као и поновну употребу свих случајева тестирања чак и тамо где промене нису извршене. Захтева пуно времена и није од велике користи када се на апликацији изврши било каква мања модификација или промена.

Комплетно тестирање: Ово тестирање је веома корисно када је у постојећем коду извршено више промена. Спровођење овог тестирања изузетно је драгоцено за откривање неочекиваних грешака. Када се ово тестирање заврши, коначни систем може бити доступан кориснику.

Веома је важно знати која врста тестирања одговара вашим захтевима. Даље ћемо разговарати о томе како се спроводи регресијско тестирање.

Како се спроводи регресијско тестирање?

Процедура за спровођење регресионог тестирања је слична оној коју примените за било који други поступак испитивања. Сваки пут када се софтвер подвргне промени и појави се ново издање, програмер спроводи ове кораке као део процеса тестирања:

  • Пре свега, он извршава регресионе тестове на нивоу јединице како би потврдио код који су они модификовали, заједно са свим новим тестовима које су написали да би покрили нову или промењену функционалност
  • Затим се промењени код спаја и интегрише да би се креирала нова верзија апликације која се тестира (АУТ)
  • Затим се изводе тестови дима како би се осигурало да је конструкција добра пре него што се изврше било која додатна испитивања
  • Једном када је изградња проглашена добром, изводе се тестови интеграције да би се верификовала интеракција између јединица апликације међусобно и са позадинским услугама као што су базе података
  • У зависности од величине и обима објављеног кода, заказује се делимична или потпуна регресија
  • Потом се оштећења пријављују развојном тиму
  • По потреби се изводе додатни кругови регресионих тестова

Тако је регресијско тестирање уграђено у типични процес тестирања софтвера. Слика испод јасно приказује како је извршено регресијско тестирање.

Кад год се изврше неке промене у изворном коду, извршење програма из очигледних разлога не успе. Након неуспеха, изворни код се отклања како би се идентификовале грешке у програму. Направљене су одговарајуће модификације. Тада се из већ постојећег пакета тестова бирају одговарајући примери случајева који покривају све измењене и погођене делове изворног кода. По потреби се додају нови тестови. На крају, тестирање се врши помоћу изабраних тест случајева. Сада се можда питате које тест случајеве одабрати.

Ефективни тестови регресије могу се извршити избором следећих тест случајева:

  • Тест случајеви који имају честе недостатке
  • Сложени тест случајеви
  • Случајеви интеграционих тестова
  • Тест случајеви који покривају основну функционалност производа
  • Функције које се често користе
  • Испитајте вазе које често не успевају
  • Примери испитивања граничне вредности

Са поступком регресионог тестирања, проверимо разне технике.

Технике испитивања регресије

Регресијско тестирање једноставно потврђује да се измењени софтвер није ненамерно променио и обично се изводи коришћењем било које комбинације следећих техника:

Поново тестирај све: Овом методом се једноставно поново тестира читав програмски пакет, од врха до дна. У многим случајевима се већина ових тестова изводи помоћу аутоматизованих алата. У одређеним случајевима аутоматизација није потребна. Ова техника је скупа јер захтева више времена и средстава у поређењу са осталим техникама.

Избор теста: Уместо да одабере све случајеве испитивања, овај метод омогућава тиму да одабере скуп тестова који ће приближити целокупно тестирање скупа тестова. Примарна предност ове праксе је што за извођење захтева много мање времена и напора. Обично то раде програмери који ће обично имати бољи увид у нијансе тестних случајева и неочекивано понашање.

Приоритизација тест случајева: Циљ ове технике је давање приоритета ограниченом скупу тест случајева узимајући у обзир више потенцијалних тест случајева испред мање важних. Бирају се тест случајеви који би могли утицати на тренутне и будуће верзије софтвера.

Ово су три главне технике. Понекад се на основу захтева за испитивањем ове технике комбинују.

Колико год регресијско тестирање могло бити корисно, није без негативних поена. Морате да разумете изазове са којима бисте се могли суочити приликом његове примене.

Изазови регресивног тестирања

  1. Дуготрајан: Техникама попут поновног тестирања потребно је пуно времена да се тестира читав низ тест случајева
  2. Скупо: Скупо због ресурса и радне снаге које требате тестирати изнова и изнова, нешто што је већ развијено, тестирано и примењено у раним фазама
  3. Комплекс: Како се производ шири, тестери су често преплављени огромном количином тест случајева и постају жртве губитка трага тест случајева, превиђајући важне тест случајеве

Упркос овим негативним тачкама, регресијско тестирање је веома корисно у процесу тестирања софтвера. Регресионим тестирањем компаније могу спречити да пројекти прелазе буџет, одржати свој тим на путу и, што је најважније, спречити да неочекиване грешке оштете њихове производе. Овим смо дошли до краја блога. Надам се да ће вам ствари које сте данас овде научити помоћи када кренете на пут тестирања софтвера.

јава аддацтионлистенер (ово)

Ако сте ово пронашли чланак релевантан, погледајте ливе-онлине Едурека, поуздана компанија за учење на мрежи са мрежом од више од 250.000 задовољних ученика раширених широм света.

Имате питање за нас? Молимо вас да га поменете у одељку за коментаре овог „ Шта је регресијско тестирање? ’Чланак и јавићемо вам се.