Истраживачко тестирање је специфичан тип тестирања софтвера који има много предности за апликацију, омогућавајући јој да достигне свој пуни потенцијал.
Начин на који тим интегрише истраживачко тестирање у своје рутинске провере могао би чак да одреди колико добро софтвер функционише, посебно пошто ово приступа процедурама тестирања на нове и неочекиване начине. Ово помаже тестерима да открију проблеме унутар апликације који иначе могу остати непримећени до покретања и резултирати нефункционисањем кључних функција.
Разумевање процеса, типова и приступа истраживачког тестирања може вам помоћи да усмерите организацију и њене тимове за тестирање како да то уграде у своје уобичајене провере.
Постоји и низ бесплатних алата које тим може да користи да олакша ове инспекције и уочи проблеме пре него што они потенцијално постану препрека развоју.
У овом водичу приказујемо предности истраживачког тестирања заједно са кључним аспектима које тим треба да размотри пре имплементације.
Шта је истраживачко тестирање?
Истраживачко тестирање комбинује фазе дизајна и извршења теста, обезбеђујући потпуну оперативну слободу за тестере и омогућавајући им да континуирано унапређују свој рад.
Док ови тимови проверавају софтвер, вероватно ће открити нове компоненте које захтевају темељне инспекције и лако ће доћи до нових тестова који би користили апликацији.
Истраживачко тестирање је слично ад хоц тестирању, али прати много ригорознију документацију, укључујући и активнији процес учења.
Мање структурирани приступ помаже тестерима да утврде како ће апликација вероватно реаговати на реалне сценарије и тестне случајеве и служи као витална допуна тестирању са скриптама.
Квалитет истраживачког тестирања тима често зависи од вештине појединачних тестера јер провере захтевају креативност и темељно разумевање софтвера. Ово је процес континуираног откривања – онај у коме тестери користе дедуктивно резоновање да би водили своју целокупну технику.
Истраживачко тестирање је посебно корисно јер одражава начин на који корисници могу да користе софтвер. Већина корисника случајно проналази грешке и проблеме, тако да ови нескриптовани процеси могу помоћи тестерима да пронађу проблеме које унапред одређене провере можда неће открити.
Такође је могуће да тим аутоматизује ову процедуру како би се обезбедио већи ниво ефикасности.
1. Када треба да урадите експлоративно тестирање?
Истраживачко тестирање је генерално корисно у скоро сваком процесу тестирања софтвера, мада се посебно истиче у пружању брзих повратних информација о апликацији.
Тим би такође могао да укључи ове провере ако им понестане скриптованих тестова. Без јасног упутства за њихове инспекције софтвера, истраживачко тестирање може помоћи да се открију проблеми који се уклапају ван стандардних провера.
Обезбеђивање разноврсних процедура тестирања омогућава тестерима да разумеју овај софтвер на далеко дубљем нивоу у било којој фази, али њихово рано спровођење може понудити више користи.
Могуће је да тимови касније поново спроведу истраживачке тестове по потреби ради додатног мира.
2. Када не морате да радите истраживачко тестирање
Постоји неколико сценарија у којима истраживачко тестирање не нуди никакве предности, мада би тестерима могло бити корисније да сачекају док софтвер не добије своју основну функционалност.
Карактеристике апликације се обично укрштају или комуницирају једна са другом, што значи да истраживачки тестови на једној функцији могу бити застарели када развојни тим дода више овом софтверу.
Такође је могуће спровести ове тестове заједно са проверама са скриптом без проблема, под претпоставком да тестери могу да обезбеде јак ниво документације како би избегли забуну.
Истраживачко тестирање је веома разноврсно у поређењу са другим типовима тестирања, што ове провере чини веома применљивим.
3. Ко је укључен у истраживачко тестирање?
Истраживачко тестирање укључује многе чланове особља у неком погледу, укључујући:
• Тестери софтвера било ког нивоа вештине могу да спроведу ове тестове, мада чланови тима који боље разумеју софтвер могу да осмисле већи избор провера.
Искуство такође може утицати на њихову способност да одреде најкорисније тестове.
• Програмери софтвера који признају резултате ових тестова, реаговаће на све сугестије и често ће развити сопствено решење проблема.
Њихов одговор на тестове је оно што омогућава апликацији да достигне стање уклапања за успешно издање.
• Менаџери пројекта који надгледају цео овај процес и чак могу бити ти који одлучују које врсте тестирања тимови користе.
Они такође могу бити одговорни за набавку софтвера за тимове који могу да поједноставе или чак аутоматизују тестове.
Животни циклус истраживачког тестирања
Истраживачки процес тестирања има снажан фокус на слободу тестера, али и даље прати специфичну структуру.
Главне три фазе овог приступа су:
Фаза 1: Учење
Тестери почињу развијањем снажног разумевања софтвера и његове функционалности – критички га анализирајући да би утврдили како се уклапа.
Ово омогућава тестеру да схвати уобичајене уносе које би корисник могао да изврши, иако је можда већ свестан апликације и начина на који она функционише.
Фаза учења може чак захтевати и туторијал о томе како да користите софтвер. Ово је фаза истраживања и опрема тестера свим информацијама које су им неопходне да осмисле широк спектар корисних тестова.
Фаза 2: Дизајн теста
Дизајн истраживачког теста заиста укључује различита правила и параметре, али и даље нуди знатно више слободе у поређењу са тестирањем са скриптом – чије су специфичности већ познате пре почетка тестирања.
Тестер може да осмисли провере за које верује да се прецизније уклапају у апликацију и може потенцијално да открије вредне податке за развојни тим, укључујући значајне грешке које треба да исправи.
Тимови за тестирање користе ову фазу да утврде који приступ да заузму и како да поделе посао између различитих тестера на начин који одговара њиховим предностима.
Фаза 3: Извршење
Након дизајнирања провера за употребу, тестери сада могу да прегледају апликацију на начине за које верују да су најефикаснији – то могу да спроведу одмах након што осмисле одређени тест.
Ово је фаза у којој тестери активно траже проблеме и како се проблеми које открију могу унети у друге функције и функције.
Иако постоји одређена мера интуитивног рада укљученог у експлоративно извршавање тестова, оно и даље прати постављене процесе и циљеве, омогућавајући флуидан тест који може лако да се прилагоди специфичним циљевима тестирања.
Истраживачко наспрам скриптног тестирања
Истраживачко тестирање је заправо супротно од тестирања са скриптама, иако би оба могу бити важна за обезбеђивање да је апликација спремна за објављивање. Ово последње је обично формалније и структурирано, обухватајући многе широке тестове у поређењу са истраживачким проверама, које су често специфичније за функционалност апликације.
Као део овога, истраживачко тестирање је такође знатно прилагодљивије, док тестови са скриптама могу имати проблема ако дође до великих промена у софтверу. Истраживачки тестови могу открити грешке и брже деловати против њих, што их чини посебно корисним у случајевима где је брза повратна информација најважнија.
1. Активно истраживачко тестирање
Активно истраживачко тестирање укључује тестер који дизајнира аутоматизовану скрипту за своје провере, коју други тестер извршава. Ове скрипте узимају у обзир претходне тестове ако је применљиво.
Два тестера обично мењају улоге током инспекцијске процедуре како би још једном проверили поузданост ових скрипти и процеса.
Активни тестови имају ширу покривеност без жртвовања специфичности заштитног знака истраживачких провера. Ове скрипте такође омогућавају бољу документацију, што олакшава репродукцију свих проблема које тестери пронађу.
Документација је суштинска компонента активних тестова јер ово такође помаже заинтересованим странама да виде укупан напредак апликације.
2. Пасивно истраживачко тестирање
За пасивно истраживачко тестирање потребан је само један тестер, иако би рад у паровима могао додатно поједноставити процес.
Овај приступ укључује специфичан софтвер који бележи радње тестера – пружајући им једноставне кораке за реплицирање било ког проблема који открију. Ово је обично у облику видео снимка са тестером који даје коментар који објашњава своје поступке корак по корак.
Снимање процеса тестирања такође даје увид у перформансе апликације, укључујући и колико брзо одговара на улазне захтеве.
Пасивно тестирање пружа и тестерима и развојном тиму обиље детаљних информација о томе како софтвер функционише.
Експлораторне технике тестирања
Истраживачко тестирање обично прати формат „обиласка“ – где тестер истражује софтвер на најефикаснији начин.
Постоје разне туре које тим може да бира, укључујући:
• Обиласци водича
Овај приступ даје приоритет истакнутој функционалности апликације, уско реплицирајући начин на који просечан корисник ради са софтвером и открива проблеме које би природно пронашли.
• Обиласци историје
Овај обилазак проверава најстарије функције апликације како би се уверио да још увек функционишу; ово је посебно важно ако су програмери додали нове функције које су у супротности са тим.
• Монеи тоур
Овај истраживачки тест проверава критичне функције апликације, посебно оне за које клијенти и клијенти плаћају новац за приступ – то су обично највиши приоритети међу тимом за тестирање.
• Обилазак злочина
Тестери понекад активно раде на разбијању апликације или изазивању негативних сценарија, као што је унос неважећих информација и истраживање како апликација реагује на ово.
• Обилазак уличице
Овај процес укључује функције које ће мање купаца вероватно користити; они су подједнако неопходни за сваки приступ тестирању, посебно зато што ће бити у интеракцији са другим функцијама.
• Интелектуални обилазак
Овај обилазак помера апликацију даље, тестирајући најкомпликованије функције са вишим (понекад максималним) вредностима да би се одредила брзина обраде софтвера.
Приступи истраживачког тестирања
Постоје два главна приступа истраживачком тестирању:
1. Истраживачко тестирање засновано на сесији
Ово је техника заснована на времену која има за циљ да квантификује процес тестирања тако што га подели на ‘сесије’ са две компоненте: мисије и повеље.
Мисија је сврха и трајање те посебне сесије, пружајући истраживачком тестеру јасан фокус.
Повеља одређује обим сваке сесије и детаљно описује све специфичне циљеве које тестер намерава да испуни. Ово резултира вишим нивоом одговорности (и документације) поделом ових провера на компоненте којима је лакше управљати.
Тестови засновани на сесији такође побољшавају продуктивност и пружају тестеру јасне метрике и информације о решавању проблема.
2. Истраживачко тестирање у пару
Тестирање засновано на пару слично је активном истраживачком тестирању јер првенствено укључује рад у паровима – обично на истом уређају – како би се истовремено проверавала апликација. У овом аранжману, један тестер предлаже низ тест случајева и води белешке о напретку, док други тестира софтвер.
Комуникација је неопходна током тестирања заснованог на пару јер то осигурава да су оба тестера свесна провера и њихове сврхе.
Ако сами додељујете ове парове, побрините се да прилагодите предности и слабости сваког тестера јер вам то омогућава да изградите јаче истраживачке процесе тестирања.
Који фактори утичу на истраживачко тестирање?
Фактори који могу утицати на квалитет истраживачког тестирања тима укључују:
• Свеобухватни циљ и основна функционалност софтвера.
• Специфични циљеви тестирања за садашњу фазу апликације.
• Индивидуалне улоге и способности сваког тестера у тиму.
• Доступни алати, као што је бесплатни софтвер за аутоматизацију тестова.
• Подршку коју тестери добијају од колега или менаџмента.
• Захтеви клијената и актуелни широки трендови тржишта.
• Лакоћа коришћења апликације, као што је флуидност интерфејса.
• Време које тестери морају да заврше фазу тестирања.
• Улазне податке и друге различите податке које тестери намеравају да користе.
• Функције које програмери додају софтверу током времена.
Врсте истраживачког тестирања
Три главне врсте истраживачког тестирања које би тим могао да укључи су:
1. Истраживачко тестирање слободног стила
Тестирање слободног стила обухвата ад хоц приступ провери апликације. Ово има неколико правила које треба узети у обзир, тако да његова ефикасност може варирати; неки софтвер и компоненте захтевају робуснију методологију.
Ове провере би и даље могле да понуде обиље предности помажући тестерима да се упознају са овом апликацијом и потврде рад претходног тестера.
Чак и без строгих правила, искусни и вешти тестери могу лако да користе ово за форматирање у своју корист. Они могу са лакоћом да се крећу кроз сваки аспект софтвера – у неким ситуацијама правила тестирања су рестриктивна и могу ненамерно да ограниче резултате тима.
2. Истраживачко тестирање засновано на сценарију
Тестирање засновано на сценарију користи реалне ситуације као основу за сваки тест, као што је провера уноса које ће корисници вероватно направити током типичног рада овог софтвера.
Тестери напорно раде како би осигурали да се сваки сценарио који осмисле поклапа са начином на који корисник користи апликацију.
Време би могло бити ограничење јер је циљ тима да тестира што више сценарија; у зависности од рокова који су пред нама, ово вероватно неће моћи да покрије сваку могућност.
Тестери би требало да користе широк спектар тестова у различитим категоријама.
3. Истраживачко тестирање засновано на стратегији
Тестирање засновано на стратегији укључује широк спектар специфичних метода укључујући тестирање граничних вредности, технике еквиваленције, технике засноване на ризику и још много тога. Ово генерално даје приоритет тестерима који су већ упознати са апликацијом јер могу да развију прилагођене стратегије које укључују ове појединачне методе.
Приступ заснован на стратегији првенствено се фокусира на функционалност софтвера (и унутрашње функционисање) без разматрања могућих сценарија који би могли да наведу корисника да наиђе на проблеме који се појављују. Ово би могло резултирати широм анализом апликације и њених различитих карактеристика, потенцијално дубљом од разних других приступа.
Ручни или аутоматизовани истраживачки тестови?
Тимови за тестирање могу да спроводе истраживачке провере или ручно или да их аутоматизују. Свака опција има капацитет да понуди огромне предности; права опција често зависи од специфичности пројекта.
Ручно истраживачко тестирање
Ручно истраживачко тестирање омогућава већи опсег провера по мери. Иако ово може потрајати дуже због тога што су људски тестери спорији од рачунара, ручна инспекција би могла бити кључна у одређивању корисничког искуства.
Тестер ради не само да би осигурао да све функције апликације раде како треба, већ и да би утврдио да ли база корисника може са лакоћом да управља њима. Ово је можда најчешћи облик истраживачког тестирања – иако то не мора да га чини најефикаснијим.
1. Предности ручног извођења истраживачких тестова
Предности ручног истраживачког тестирања укључују:
Јачи фокус на употребљивост
Аутоматски истраживачки тестови могу уочити одступања у софтверу, али можда неће моћи да протумаче ове проблеме на исти начин као људски тестер.
Ово укључује разумевање начина на који ће се корисници софтвера вероватно кретати или комуницирати са апликацијом, што аутоматизација не може узети у обзир.
Ручни истраживачки тестери могу понудити већи ниво повратних информација, укључујући специфичне детаље о томе како проблеми које пронађу утичу на укупан софтвер или опште искуство.
Може да прави промене у реалном времену
Једна од кључних предности истраживачког тестирања је то што је могуће идентификовати потребу за тестом и извршити га релативно брзо пре него што понуди потребна побољшања.
Аутоматско тестирање је генерално много бржи процес, али тестери морају да сачекају док се све не заврши пре него што унесу измене – ручни тестери то могу да ураде док је процес истраживачког тестирања још увек у току.
Међутим, ово је често могуће само за грешке које утичу на мање делове софтвера.
Већа пажња на детаље
Истраживачко тестирање се углавном односи на откривање нових начина тестирања апликације док је разумете; то понекад може значити да један тест води ка другом дајући идеје испитивачу.
Аутоматизовани тестови можда неће узети у обзир ово због тога што су релативно слободни за тим за тестирање. Ручни тестери непрестано побољшавају своје знање о софтверу и осмишљавају нове, али подједнако важне тестове – али то може бити тешко ако их софтвер треће стране аутоматизује.
Може пронаћи грешке изван кода
Ручне истраживачке провере омогућавају тестерима да погледају сваки аспект апликације и софтвера, укључујући и изван самог кода.
Многи аутоматизовани приступи су ограничени на код и начин на који он функционише, што може довести до тога да тестни тимови не примећују проблеме који се могу појавити у другим деловима апликације.
Ово углавном зависи од софтвера за аутоматизацију који имате јер би нека решења могла да понуде шири приступ истраживачком тестирању.
Обезбеђује квалитет у целом пројекту
Аутоматске истраживачке провере траже само грешке и метрике унутар апликације; ручни тестери би уместо тога могли да прегледају софтвер и понуде сопствене свеобухватне повратне информације.
На пример, они могу да тестирају код и утврде да је превише сложен – посебно важно јер мртви код може успорити перформансе, али би га аутоматизовани процеси ефективно не открили.
Познавање софтвера тестера може бити од кључног значаја за дијагностицирање проблема који се јављају током других фаза тестирања.
2. Изазови ручног истраживачког тестирања
Изазови ручног истраживачког тестирања укључују:
Могућност људских грешака
Аутоматско истраживачко тестирање може да покрене потпуно исту проверу онолико пута колико је потребно без икаквих промена у тачном напретку, обезбеђујући доследност и поуздане резултате.
Ручно истраживачко тестирање је подложно људским грешкама, што значи да тестер може унети погрешну вредност. Обично је могуће двапут проверити ове тестове и исправити сва одступања јер могу изгледати очигледне чак и на први поглед.
Међутим, понављање теста након уочавања грешке може одузети више времена.
Генерално, дуготрајније
Чак и ако тестери исправно спроводе сваку истраживачку проверу без људских грешака, овај укупни процес траје значајно време у поређењу са аутоматизованим софтвером који може много брже да израчуна тестове.
Ово би могла бити разлика од најмање неколико сати; време које би тестери могли да потроше на делове апликације који не би имали користи од аутоматизације.
Истраживачки тестови такође захтевају стални надзор, док аутоматизација омогућава да се тестови изводе преко ноћи.
Дуг процес документације
На сличан начин, ручна документација током и након ручног тестирања могла би представљати непотребан напор за процес истраживачког тестирања.
Ово отежава праћење промена и измена софтвера током времена – аутоматизовани софтвер је обично у стању да то интуитивно узме у обзир приликом покретања тестова.
Ово је још једно административно питање које одузима време и енергију другим стварима, што ефективно смањује обим и ширину целокупне процедуре тестирања софтвера.
Мора добро познавати софтвер
Ручни тестери било ког нивоа вештине могу да прегледају апликацију и темељно је тестирају. То је због посла који су уложили у разумевање софтвера – прве фазе истраживачког процеса.
Међутим, ако се тестер мучи или занемари да научи како ова апликација функционише, вероватно ће се мучити да осмисли и изврши одговарајући низ тестова.
Добро познавање софтвера омогућава тестерима да оду изнад уобичајених параметара тестирања.
Скупо за одржавање
Ослањање на ручно истраживачко тестирање обично захтева већи тим за тестирање, што би могло резултирати већим дугорочним трошковима у поређењу са аутоматизованим проверама. Софтвер треће стране који спроводи ове истраживачке тестове може пружити огромну вредност или чак може бити потпуно бесплатан.
У зависности од сложености задатака, компанија може захтевати висококвалификоване тестере са дугогодишњим искуством да у потпуности провере апликацију. Ово може значајно повећати трошкове тестирања у поређењу са коришћењем бесплатног софтвера за аутоматизацију.
3. Када користити ручно истраживачко тестирање
Ручно истраживачко тестирање често долази са неколико изазова, али је и даље витална компонента темељног тестирања софтвера. То је зато што постоје аспекти софтвера које аутоматизација не може у потпуности узети у обзир, а који такође захтевају снажан фокус.
На пример, софтвер не може поуздано да пружи повратне информације о корисничким интерфејсима или тестовима корисничког искуства. Тестери могу добити добру представу о томе како апликација функционише у пракси само ако ручно тестирају за њу. То значи да и програмери и тимови за тестирање морају да размотре интеграцију барем неког степена ручног истраживачког тестирања у своје провере.
Аутоматско истраживачко тестирање
Аутоматско тестирање користи софтвер треће стране да аутоматизује одређене провере – тестери обично могу да прилагоде ово да би се прилагодили практично сваком тесту.
Међутим, ово генерално захтева од тима да изврши проверу ручно најмање једном да би калибрисао аутоматизацију. Ово може значајно поједноставити процес за тимове за тестирање и развој.
Иако аутоматизација истраживачких тестова може бити неуобичајена, постоји неколико јасних предности за вашу апликацију и њене перформансе.
1. Предности истраживачке аутоматизације тестова
Главне предности аутоматизације истраживачког тестирања укључују:
Доследно извођење теста
Људска грешка може лако довести до грешака у тестирању за које је потребно време и новац да се исправе; аутоматизоване истраживачке провере омогућавају тимовима за тестирање да заобиђу овај проблем.
Тестери ефикасно подучавају софтвер за аутоматизацију како да исправно изврши тест, осигуравајући да га сваки пут спроведе идентично. Ово побољшава укупну поузданост тестова и смањује време које програмери проводе чекајући резултате – посебно зато што тестери могу да подесе да ово ради преко ноћи са лакоћом.
Штеди време свима
Аутоматизовани тестови омогућавају програмерима да почну да раде на решавању проблема много брже, а истовремено омогућавају тестерима да покрију шири опсег истраживачких провера. Постоји само толико сценарија које тим може да узме у обзир без обзира на њихов рок, што значи да је важно да тестери уклопе што више провера у дозвољени временски оквир.
Аутоматизација помаже спровођењем ових истраживачких тестова много брже од ручних тестера.
Исплатив приступ
У зависности од софтвера који тим одабере, аутоматизација би могла бити далеко исплативија од ручног тестирања – ово би чак могло бити бесплатно.
Иако су ручни тестери и даље критични за запошљавање и неки од њих ће бити одговорни за калибрацију процедура аутоматизације, аутоматизација што је могуће више истраживачких тестова даје компанији шансу да смањи трошкове особља.
Када тим разуме софтвер за аутоматизацију, може га прилагодити широком спектру задатака.
Прилагодљив за више уређаја
За ручно тестирање може бити потребно особље са искуством на различитим уређајима, као што је познавање различитих оперативних система телефона укључујући Андроид и иОС ако се прави мобилна апликација.
Аутоматизовани софтвер може да узме у обзир ово и тестира на више уређаја како би се осигурало да апликација може доследно да ради добро. Тимови за тестирање који познају ове уређаје могу сматрати да је процес досадан; аутоматизација је поново у могућности да поједностави уобичајене процесе истраживачког тестирања и тестира сваку итерацију истовремено.
Скрипте за вишекратну употребу
Ако тим тестира неколико верзија истог софтвера или чак више производа са сличном архитектуром или карактеристикама, могуће је поново користити скрипте из једног циклуса тестирања у други.
Ако постоје било каква подешавања која су неопходна да би се осигурала компатибилност, ручни тестери то могу учинити много брже од писања потпуно нове скрипте.
Аутоматизација оптимизује буквално сваку фазу процеса истраживачког тестирања, лако се подешава кроз различите конфигурације софтвера.
2. Изазови аутоматизације истраживачких тестова
Овај процес такође укључује различите изазове, као што су:
Представља само једну страну тестирања
Није практично нити мудро аутоматизовати сваку проверу током тестирања апликације јер постоје неки аспекти о којима само ручни тестер може поуздано да пружи повратне информације.
Ово укључује корисничко искуство, мада би могло бити могуће добити детаљне анализе перформанси и тестирања оптерећења путем аутоматизације, у зависности од софтвера који изаберете.
Истраживачкој аутоматизацији тестова недостаје људска просудба и могла би најбоље да функционише заједно са ручним тестером за неке провере.
Нереална очекивања од способности
На сличан начин, аутоматизоване процедуре истражног тестирања могу да пруже огромне предности за апликацију поред целокупног пројекта.
Међутим, овај приступ није увек одговор. Организације које се у великој мери ослањају на аутоматизацију у свакој фази могу имати непотпуну перспективу софтвера.
Аутоматизација идентификује проблеме, али тимови за тестирање и развој су одговорни за њихово решавање. Важно је дефинисати свеобухватну стратегију аутоматизације како би сви у пројекту разумели његове могућности и ограничења.
Већи захтеви за вештином
Аутоматизација обично укључује знање како да се изврше сложене провере, поред тога како их програмирати и заправо аутоматизовати. Ово често захтева године искуства у писању скрипти, иако софтвер за аутоматизацију може помоћи у значајној оптимизацији ових процеса.
Од кључне је важности да компанија регрутује тестере са различитим и робусним вештинама како би олакшала ефикасну аутоматизацију.
Тестери са искуством у аутоматизацији такође знају функције којима треба дати приоритет док бирају између доступних софтверских опција независних произвођача, осигуравајући да тим добије добар производ.
Неправилне стратегије и комуникација
Саопштавање кохерентне стратегије је најважније за сваку успешну аутоматизацију; програмери, тестери, па чак и менаџери пројеката морају бити на истој страни током тестирања.
Тимови морају да раде заједно како би идентификовали обим и распоред својих предстојећих процедура. Ово важи за сваки процес тестирања, али је посебно неопходно због додатне сложености аутоматизације. Боље линије комуникације и недостатак силоса за информације омогућавају вашим тимовима да ефикасније спроводе своје тестове.
Избор правог софтвера за аутоматизацију
Аутоматизација обично укључује одабир апликације треће стране која је компатибилна са циљевима тестирања тима. Свака опција има различите планове цена и функционалност. Ово може бити значајан дугорочни трошак, чак и ако софтвер успешно извршава аутоматизоване тестове истовремено пружајући значајну вредност.
Постоји велики број бесплатних опција које нуде импресивну функционалност упоредиву са премиум алтернативама. Неопходно је да тим за тестирање истражи све доступне опције, укључујући бесплатни софтвер.
Закључак: Аутоматизација истраживачког теста наспрам ручног истраживачког тестирања
Постоји неколико пројеката који имају користи од потпуно ручног тестирања или потпуно аутоматизованог тестирања јер апликације свих врста раде боље са комбинацијом оба.
Док аутоматизовани тестови могу оптимизовати процес за тимове за развој и обезбеђење квалитета, неки аспекти дизајна захтевају ручно истраживачко тестирање; ово је једини начин да се добије повратна информација о кориснику.
Временом, све више организација ради на имплементацији хипераутоматизације , процеса који има за циљ да интелигентно максимизира аутоматизацију, осигуравајући да пословање има ефикасну стратегију – ово би и даље могло постојати уз ручно тестирање.
Аутоматско тестирање постаје приступачније за компаније због све веће распрострањености софтвера за аутоматизацију, посебно са неколико бесплатних опција које су доступне са обиљем функција. Ово олакшава фирмама да усвоје комбиновани приступ ручног/аутоматизованог истраживачког тестирања.
Растућа популарност Агиле-а (технике управљања пројектима која се фокусира на инкрементални, али значајан напредак) у развоју такође је фактор јер захтева кратке циклусе тестирања. Комбинована стратегија тестирања би могла да прихвати ову и разне друге развојне стратегије, као што је континуирана интеграција, која на сличан начин захтева поновљено тестирање да би се обезбедио успех у многим итерацијама истог софтвера.
Шта вам је потребно да започнете истраживачко тестирање
Предуслови за истраживачко тестирање су:
1. Јасни циљеви тестирања
Иако је истраживачко тестирање синоним за слободу и понекад се меша са ад хоц тестирањем, ово и даље следи специфична правила или дефинисане циљеве. Једини начин да КА тим успешно управља скоро сваком структуром тестирања је да зна очекивани исход сваког теста, посебно пошто тестери обично сами дизајнирају ове провере.
2. Креативни, интуитивни тестери
Истраживачко тестирање се фокусира на дизајнирање нових и креативних тестова који могу открити проблеме са апликацијом. Чак и тестери са ограниченим искуством могу то да ураде, под претпоставком да разумеју софтвер.
Важно је да тестери разумеју апликацију и како она функционише; ово им омогућава да интуитивно развију низ корисних провера.
3. Кохерентна документација
Свака врста тестирања мора имати снажну документацију како би се осигурало да сваки члан тима прати очекивани распоред тестирања и да нико случајно не понови проверу.
Ово је витални аспект комуникације у једном одељењу и у неколико, као што су програмери који захтевају редовна ажурирања тестирања да би открили како да реше проблеме.
4. Перспектива купца
Истраживачко тестирање покрива многе стратегије и сценарије, укључујући и оне који одражавају начин на који ће се корисници практично бавити апликацијом. Од виталног је значаја да тимови за тестирање то узму у обзир током својих провера, чак и ако не спроводе тестове засноване на сценаријима.
Усвајање овога омогућава тестеру да приступи тестирању из различитих перспектива, побољшавајући квалитет ових провера.
5. Софтвер за аутоматизовано тестирање
Пошто тим вероватно може да аутоматизује значајну количину тестова које дизајнира, важно је да могу набавити висококвалитетни софтвер за аутоматизовано тестирање пре фазе извршења.
Програмери и тим за тестирање могу да користе своје разумевање пројекта да одреде апликацију треће стране која би одговарала њиховим сопственим захтевима.
Истраживачки процес тестирања
Специфични кораци за истраживачко тестирање су следећи:
1. Класификовати поступак тестирања
Први корак истраживачког тестирања је да релевантни чланови тима схвате како би могли приступити овим проверама, као што је класификовање уобичајених грешака и спровођење анализе основног узрока.
Овде тестери развијају своје идеје за саме тестове; у зависности од њихове тачне методологије, они такође могу дизајнирати испитну повељу.
Ово одређује обим и тестове за ту сесију или радни дан.
2. Започните тестове
Док тачни параметри (као што је време за сваки тест или целокупна сесија) зависе од сопствених преференција тима и захтева пројекта, сва истраживања прате одређене заједничке карактеристике.
Након класификације релевантних провера, особље за обезбеђење квалитета почиње да спроводи тестове и бележи све резултате.
Ако провере захтевају аутоматизацију, тестери би могли да подесе ово да ради преко ноћи или да га сами надгледају током дана.
3. Прегледајте резултате
Следећа фаза је преглед резултата, упоређујући их са подразумеваним и очекиваним резултатима. Ако ови тестови доведу до значајних неочекиваних одступања било које врсте, тестери би могли да понове проверу или одмах почну да откривају како да то поправе. Предлози које дају програмерима могу бити од кључног значаја у одређивању исправног приступа – а њихови извештаји о грешкама то могу детаљно објаснити.
4. Дебрифинг теста
Након лицитације резултата тестирања, тим за осигурање квалитета почиње да прегледа саму процедуру тестирања и користи је да утврди да ли је њихов истраживачки приступ тестирању прикладан.
Овај сажетак извештаја теста могао би чак закључити да је било оперативних грешака током провера које захтевају поновно тестирање. Тим за тестирање такође може поново да провери апликацију када програмери поправе ове проблеме како би утврдили да ли су били успешни.
Најбоље праксе за истраживачко тестирање
Најефикасније праксе за истраживачко тестирање укључују:
1. Упаривање тестера
Многи облици истраживачког тестирања имају користи од заједничког рада тестера – ово додатно поједностављује процес и омогућава вишеструке перспективе истих провера.
Тестирање у пару такође избегава могућност тунелске визије, подстичући креативнији дизајн теста.
Неколико људи који раде на истим тестовима може довести до веће тачности у целости, а подела радног оптерећења такође помаже да тестирање буде много брже за цео тим.
2. Мешање ручних и аутоматизованих тестова
Неке компаније се и даље боре да усвоје аутоматизацију, док је друге прекомерно користе, чак и када би ручне перспективе могле бити корисније. Балансирање ових провера заједно омогућава тиму за тестирање да покрије више основа и обезбеди квалитет у целој апликацији, укључујући субјективније аспекте као што је интерфејс софтвера.
Заједничко спровођење ручних и аутоматизованих тестова је једини начин да се гарантује потпуна покривеност тестом сваке функције или функције.
3. Разумети тржиште
Важно је да тестери знају и своју циљну публику и конкуренте током процеса тестирања; ово им помаже да процене како ће људи вероватно реаговати на тренутну функционалност апликације.
Одређене функције су веома тражене, а тим за тестирање може имати користи од давања приоритета њима током провера. Иако такође морају да одржавају широку покривеност тестом. Ово би могло одредити правац тестирања уз потенцијални успех софтвера при лансирању.
4. Користите праве уређаје за тестирање
Тимови за тестирање софтвера могу користити емулаторе да би олакшали своје истраживачке провере; ово може бити корисно, али ретко одражава практично корисничко окружење.
Прави уређаји помажу да се побољша поузданост истраживачког тестирања стварајући реалистичније искуство – емулатори су несавршени и могу имати грешке које нису присутне за кориснике.
Емулација је брз начин за тестирање више платформи, али није замена за стварне уређаје.
Врсте резултата из истраживачког теста
Постоје различити резултати које би тестери могли да добију након провере, укључујући:
1. Резултати испитивања
Сами резултати имају различите облике јер истраживачко тестирање може да обухвати стотине јединствених тестова. Ови резултати чине већину излазних резултата рутине тестирања, нудећи виталне информације о стању апликације и њеној способности да задовољи потребе корисника.
Тестери би могли поново да провере систем и потврде информације по пријему ових резултата како би одредили своју следећу акцију.
2. Тест евиденције
Сопствени дневники апликације често откривају грешке и проблеме током процеса тестирања; они пружају најјаче назнаке зашто софтвер није прошао тест. Старији тестери су посебно вешти у тумачењу евиденције апликације, омогућавајући им да идентификују узрок компликованих проблема.
Што више информација тестери сакупе из ових евиденција, то су више у могућности да помогну програмерима.
3. Извештаји о испитивању
У зависности од процедуре аутоматизације тима, њихови резултати могу аутоматски да генеришу извештај о грешци. Ово наводи све грешке присутне у апликацији, можда укључујући њихове узроке и све друге податке релевантне за програмере.
Тестери могу да користе ово да дају своје мишљење о томе да ли је софтвер спреман за лансирање, што је опште познато као одлука „иди/не-иди“.
Примери истраживачког тестирања
Ево три примера како компанија може да користи истраживачко тестирање:
1. Апликација за мобилне игре
Ако компанија за игре на срећу жели да објави велико ажурирање за мобилну апликацију, истраживачки тестери могу да провере и старе и нове функције како би утврдили да ли је апликација и даље стабилна. Ово може повећати сложеност софтвера до те мере да он не успе да се покрене на одређеним уређајима.
Тестери раде на томе да минимизирају ефекте овога, истовремено осигуравајући употребљивост на што је могуће више платформи.
Истраживачки тестери темељно проверавају игру и њене многе компликоване сценарије како би осигурали да свака функција ради како је предвиђено; овај процес обично захтева ручни тестер.
2. Веб локација добављача услуга
Веб локације се такође подвргавају истраживачком тестирању како би били сигурни да раде и за кориснике и за особље, тако да тестери могу почети тако што ће се пријавити на веб локацију. Ово тестира способност сајта да креира нове корисничке профиле и проверава да корисници не могу да приступе административним функцијама.
Тестери затим прелазе на проверу услуге која може бити у облику резервисања термина или наручивања. Они ће затим завршити куповину како би се уверили да наплата функционише адекватно, након чега ће погледати потврду поруџбине е-поштом и историју налога.
3. Систем управљања болницом
Апликације и системи свих врста могу имати користи од истраживачког тестирања. За системе управљања болницом, тестер би могао да погледа како модул плаћања интерагује са другим функцијама.
Виши нивои интеграције могу довести до значајних грешака без ригорозног тестирања. Ове провере могу укључити архитектонски дијаграм који прати многе компоненте система и како се оне укрштају.
Тестери такође посматрају проблеме у претходним итерацијама система и посебно тестирају да ли су још увек присутни, предузимајући брзе мере ако открију било какве грешке.
Врсте грешака и грешака откривених експлоративним тестирањем
Грешке које би тестери могли да открију током истраживачког тестирања укључују:
1. Некомпатибилне карактеристике
Одређене функције у апликацији можда неће бити у интеракцији једна са другом како се очекује – што може довести до тога да корисници не могу да доврше куповину или да користе апликацију. Тестери проверавају функције изоловано и у тандему једни са другима да би се уверили да се све уклапа.
2. Неправилан дизајн корисничког интерфејса
Кориснички интерфејс апликације одређује тачно како неко користи софтвер. На пример, ако важне функције нису очигледне купцима, они можда неће приметити да те функције постоје, што ограничава њихово уживање у апликацији.
Ручно тестирање корисничког интерфејса идентификује и исправља дизајн који није прилагођен кориснику.
3. Грешке у аутентификацији
Многе апликације и веб локације омогућавају креирање корисничког профила са одређеним привилегијама. Од виталног је значаја да тестери провере да ли просечни корисници могу на неки начин приступити осетљивим подацима или чак административним функцијама док користе софтвер на неочекиване начине.
4. Мртви код
Тестери би могли да пронађу застарели код који је још увек присутан у апликацији, што може чак бити и узрок значајних проблема са перформансама. Мртви код превише компликује унутрашњи рад апликације и може довести до грешака које се могу избећи. Идентификовање и оптимизација овога чини софтвер прилагодљивијим за особље и кориснике.
Заједничке метрике истраживачког тестирања
Уобичајени показатељи са којима се тестери могу сусрести током својих истраживачких тестова укључују:
1. метрика теста перформанси
Истраживачки тестови који посматрају опште перформансе апликације могу резултирати широким спектром метрика. Ово може укључивати минимално, просечно и максимално време одговора, заједно са стопом неуспеха и успеха да би се утврдила стабилност.
2. метрика покривености тестом
Покривеност тестом је важна јер ово одређује колико категорија и аспеката апликације тестови обухватају. Проценат покривености захтева, на пример, процењује да ли постоје неке функције које захтевају даље рунде тестирања.
3. Укупна ефикасност испитивања
Праћење броја успешних и неуспешних провера помаже тестерима да схвате опште здравље апликације. Поврх овога, тим може да прати колико је грешака које открије критично.
4. Дистрибуција недостатака
На сличан начин, провера дистрибуције дефеката показује компоненте или функције које су најподложније грешкама. То могу бити делови апликације који често ступају у интеракцију са другима, због чега је од суштинског значаја да се овим тестовима одреди приоритет.
5. Регресијска метрика
Истраживачко регресионо тестирање омогућава тестерима да виде како се понашају различите итерације истог софтвера и како то може утицати на перформансе.
Стопа убризгавања дефеката и дефекти по изградњи су специфичне метрике које помажу у томе.
Рашчишћавање неке забуне: истраживачко тестирање наспрам ад хоц тестова
Са јаким фокусом на слободу тестера, неки људи често бркају истраживачко тестирање са ад хоц тестирањем. Ова два формата деле неколико кључних сличности, али на крају служе различитим сврхама.
1. Шта је ад хоц тестирање?
Ад хоц тестирање је потпуно неструктуриран приступ који се раскида са конвенционалним дизајном тестирања како би се пронашли недостаци који се иначе не би појавили.
Овај облик тестирања обично не укључује документацију, што отежава репродукцију проблема осим ако тестер није потпуно сигуран у узрок.
Један пример овога је ‘тестирање мајмуна’, провера која укључује насумичне уносе и на крају има за циљ да разбије систем.
Слично истраживачком тестирању, многи ад хоц тестери раде као парови да би завршили ове провере; ово побољшава њихову поузданост. Ад хоц приступ би могао бити користан након формалног извршења теста како би се осигурало да провере узимају у обзир сваку могућност; ово такође помаже када постоји ограничено време за спровођење даљег тестирања. Уз правилно извршење, ад хоц тестови су веома корисни.
2. Разлике између истраживачког тестирања и ад хоц тестова
Ад хоц тестирање генерално не укључује званичну документацију. Ово је у оштрој супротности са истраживачким тестовима где импровизована природа ових провера чини вођење евиденције још важнијим.
Експлораторни тестови користе већи број формалних техника тестирања, док ад хоц провере то избегавају гледајући ван конвенционалног теста етикета. Ово им помаже да открију грешке које тестери иначе никада не би пронашли.
Истраживачко тестирање има јасне циљеве и границе, али и даље омогућава члановима тима да користе креативне тестове. Ад-хоц тестови обично немају дефинисане крајње циљеве осим гурања софтвера колико год може. Ад хоц тестирање често такође укључује већ постојеће знање о софтверу и његовим функцијама, док истраживачко тестирање укључује учење апликације у њене уобичајене процесе.
Експлораторно тестирање у Агиле-у
Агилна методологија у великој мери промовише континуирано побољшање. То значи да се добро слаже са истраживачким тестовима, посебно пошто расте потражња за честим ажурирањима софтвера.
Комбиновање истраживачког тестирања са Агиле-ом може члановима тима омогућити јачу структуру тестирања укључивањем планирања издања и извршавања спринта у њиховим распоредима. Компанија која прихвата Агиле технике могла би још више да искористи ово упарујући га са истраживачким тестирањем; ово је одличан начин за тестирање сваке појединачне софтверске компоненте апликације. Пошто тестери могу да спроводе истраживачке провере без скрипти, ово штеди много драгоценог времена и особљу за осигурање квалитета и програмерима.
Аутоматско истраживачко тестирање повећава ове уштеде, помажући компанијама да много брже провере најновије итерације своје апликације, потенцијално преко ноћи. Истраживачке провере дају брзе, употребљиве резултате, а програмери могу да реагују на све неопходне промене као део свог следећег спринта.
Ручно истраживачко тестирање и даље нуди многе предности у комбинацији са Агиле-ом због своје способности да идентификује проблеме које би аутоматизовани приступ могао да пропусти. Други облици тестирања једноставно трају предуго или пружају премало предности да би се удобно уклопили у Агиле оквир. Истражне провере могу осигурати да свака Агиле фаза значајно побољшава софтвер и његову функционалност.
7 грешака и замки које треба избегавати у примени истраживачких тестова
Ево седам уобичајених грешака које компаније често праве док спроводе истраживачке тестове, поред тога како компаније могу да избегну ове проблеме:
1. Неуравнотежено ручно/аутоматско тестирање
Проналажење тестова који најбоље функционишу са ручним проверама и који би имали користи од аутоматизације захтева време, али омогућава тимовима да тестирају много ефикасније.
Аутоматизација превише тестова може резултирати апликацијом која је гломазна или није прилагођена кориснику због недостатка људског тестера.
2. Временска ограничења
Истраживачко тестирање је брже од многих других облика тестирања, али реалност пројектних рокова значи да још увек постоје ограничења колико тестова тим може да спроведе.
Управљање временом и посвећеност покривању тестирања помажу тиму за тестирање да изврши што више провера у многим широким категоријама.
3. Нефлексибилни тестери
Док истраживачки тестери не захтевају претходно знање о софтверу или посебно дубоке вештине, провере се и даље ослањају на способности и иницијативу појединачних чланова тима.
Менаџер пројекта мора мудро доделити ове улоге тестирања, резервишући их за креативније и интуитивније чланове тима ако је потребно.
4. Потешкоће у реплицирању неуспеха
Није увек очигледно које радње доприносе неуспеху теста; такође може бити нејасно који аспекти апликације су криви.
Због тога многи истраживачки приступи укључују упаривање тестера или чак директно снимање екрана тестера како би се јасније разумели проблеми и њихови тачни узроци.
5. Нејасна документација
Било да се ради о аутоматизованом извештају о грешци или ручном запису о завршеним тестовима, добра документација олакшава програмерима да реагују на основу налаза тима за тестирање.
Тим за тестирање мора да се посвети обезбеђивању висококвалитетног вођења евиденције током сваке појединачне провере, нудећи што више детаља сваком извештају.
6. Висока очекивања
Истраживачко тестирање је корисно за скоро сваки софтверски пројекат, али је и даље ограничено у свом обиму – најбоље функционише у комбинацији са другим методама тестирања.
Тимови за тестирање морају да изврше ове провере упоредо са уобичајеним скриптираним тестовима; ово је једини начин на који одељења за обезбеђење квалитета могу да обезбеде доследно широку покривеност тестовима.
7. Неправилна аутоматизација
Важно је да тим за тестирање и менаџер пројекта разумеју који софтвер за аутоматизацију пружа највише предности за ту одређену апликацију.
Различите опције треће стране нуде своје јединствене карактеристике, тако да избор тима може одредити успех њихове роботске аутоматизације процеса ; морају да размотре сваку опцију која је пред њима.
5 најбољих бесплатних алата за истраживачко тестирање
Пет најбољих алата за истраживачко тестирање које тимови за осигурање квалитета могу бесплатно да користе укључују:
1. ЗАПТЕСТ БЕСПЛАТНО издање
ЗАПТЕСТ Фрее пружа функционалност на врхунском нивоу уз апсолутно нулту цену, омогућавајући било којој организацији да искористи лаку имплементацију истраживачког теста.
Ова апликација може да аутоматизује било коју платформу, уређај и претраживач са иновативном 1СЦРИПТ технологијом.
ЗАПТЕСТ такође пружа флексибилну РПА аутоматизацију, омогућавајући вам да комбинујете ово са ручним приступом.
2. КСРАИ Екплоратори Апп
КСЕА омогућава корисницима да креирају свеобухватне тестове и лако забележе свој напредак, поједностављујући фазу извештаја о грешкама током истраживачког тестирања.
Ова опција се у потпуности фокусира на перспективу корисника и нуди централизовано чвориште резултата за ажурирање других тестера.
Међутим, КСРАИ тренутно нема интегрисану аутоматизацију, што би могло ограничити његову дугорочну ефикасност.
3. Магнет за бубе
Екстензија претраживача која нуди темељно истраживачко тестирање, Буг Магнет омогућава тестерима да провере ивице случаја и друге проблематичне вредности.
Ово проширење такође омогућава једноставну интеграцију лажног текста, адреса е-поште и више скупова знакова.
Међутим, ово је доступно само за претраживаче засноване на Фирефок-у и Цхроме-у, што га чини мање разноврсним избором од конкурената.
4. Азуре тест планови
Азуре тест планови су кључни део Мицрософт-ове Азуре платформе и омогућавају тестерима да сниме богате податке у многим сценаријима.
Ова опција је погодна и за десктоп и за веб апликације, а истовремено пружа могућност праћења од краја до краја која има јасну евиденцију о развоју софтвера.
Међутим, овај приступ често захтева дубљу интеграцију са Азуре-ом, стога долази по цену флексибилности.
5. Тестини
Тестини је специјализован за ручно истраживачко тестирање, нудећи паметни уређивач који омогућава тестерима да дизајнирају провере користећи структуру дрвета за максималну флексибилност.
Свака промена покретања или тест случаја остаје у историји апликације како би се осигурала потпуна одговорност и следљивост.
Међутим, ово је бесплатно само за мале тимове и пројекте отвореног кода.
Када треба да користите алатке за Ентерприсе у односу на бесплатне истраживачке тестове?
Док је истраживачко тестирање исплатива инвестиција и премиум апликације обично нуде већу функционалност, постоји много бесплатних опција које пружају више него довољно функција.
Истраживачко тестирање може бити значајан оперативни трошак ако се посветите премиум моделу, али нема свака компанија или тим за развој софтвера новац за ово. Избор најбољег софтвера треће стране често зависи од специфичних захтева фирме.
Плаћено решење може бити једини начин да се задовоље потребе тог пројекта; тим мора да истражи различите изборе пре него што се обавеже на апликацију.
Компаније са мањим тимовима могу имати највише користи од бесплатних алата за тестирање јер су многе опције бесплатне за ограничен број корисника.
Алтернативно, они могу да изаберу опције без овог ограничења и оне које су у стању да се прилагоде скали тима за тестирање. Ово би могло учинити још одрживијим упаривање истраживачких тестера како би се осигурали прецизнији резултати – тиму ће, наравно, бити потребно мање корисничких профила.
Многе услуге нуде бесплатну пробну верзију свог софтвера како би организације могле да виде да ли задовољава њихове потребе; они обично трају само неколико недеља.
Контролна листа за истраживачко тестирање, савети и трикови
Постоји много додатних савета које тестери могу узети у обзир када започињу своје истраживачке провере, укључујући:
1. На одговарајући начин поделите функције и модуле
Да би се избегла погрешна комуникација, тимови за тестирање треба да направе јасну листу сваке функције и провера које намеравају да изврше. Ово такође значи да се осигура да су тестови адекватно распоређени по функцијама софтвера.
За најбоље резултате, најважније је да тим за тестирање преговара који чланови спроводе сваки тест на основу њихових вештина и снага.
2. Радите на разумевању софтвера
Фаза учења је критичан део истраживачког тестирања. То значи да тестери морају активно да се баве софтвером и да схвате како он функционише пре него што осмисле тестове.
Учење о унутрашњем функционисању овог софтвера може бити процес сарадње, који обезбеђује боље разумевање у целом тиму. Ово омогућава тестерима да развију боље провере и тестне случајеве.
3. Одредите проблематична подручја
Свака апликација има карактеристике или компоненте које се укрштају са другима. Како софтвер постаје све сложенији, већа је вероватноћа да ће се појавити грешке; ово би могло захтевати више тестирања. Тим мора активно радити на откривању којим компонентама је потребна додатна помоћ.
Они могу користити специфичне обиласке тестирања које најбоље одражавају потребе апликације и укупне приоритете тима за тестирање.
4. Почните са основним корисничким сценаријима
Тимови за обезбеђење квалитета могу да спроведу истраживачке тестове било којим редоследом, ако је потребно, али би можда било корисније да почнете са лакшим проверама пре него што уђете у компликованије функције.
Ово омогућава несметан напредак у смислу сложености, дајући тестерима прилику да разумеју софтвер. Такође помаже да се тестира да ли основне функције раде како се очекује.
5. Упарите тестере заједно
Упарено истраживачко тестирање поједностављује и потврђује фазу обезбеђења квалитета, омогућавајући тестерима да раде са апсолутним поверењем у свакој провери. Сарадња чини сваки облик тестирања ефикаснијим побољшавањем упознавања сваког члана тима са софтвером.
Они такође могу да обезбеде извештаје о грешкама са далеко већом дубином због својих индивидуалних перспектива, дајући програмерима више информација за рад.
6. Покрените неколико тестова
Способност тима да поново тестира апликацију зависи од распореда и рокова који су пред њима. Али ако је могуће, двострука провера посебно проблематичних компоненти може бити корисна.
Поврх свега, понављајући тестови могу потврдити да је претходно откривени проблем сада поправљен и да неће даље утицати на софтвер. Ова марљивост је понекад неопходна да би се осигурало да је тестирање успешно.
Закључак
Истраживачко тестирање може много да понуди компанијама за развој софтвера свих врста, делујући као допуна тестирању са скриптама и многим другим проверама.
Уз помоћ истраживачког тестирања, тимови за осигурање квалитета могу тестирати апликације према вишим стандардима, побољшавајући квалитет коначног софтвера и помажући програмерима да исправе све грешке ако постоје.
Комбинација ручног и аутоматизованог истраживачког тестирања може да обезбеди највише користи, омогућавајући једнаку пажњу свим софтверским компонентама.
Ако је вашој компанији потребан истраживачки софтвер за аутоматизацију, ЗАПТЕСТ ФРЕЕ Едитион нуди много ширу и флексибилнију функционалност од других премиум апликација, омогућавајући тестерима да лако оптимизују ове провере.
Често постављана питања и ресурси
1. Најбољи курсеви о аутоматизацији истраживачког теста
И нови и искусни истраживачи тестери могли би да имају користи од курсева да побољшају своје вештине. Ово укључује откривање како приступити новом софтверу.
Корисни курсеви који могу помоћи у томе укључују:
• Удеми-јев комплетан програм за тестирање софтвера за 2023. годину; ово подучава широко тестирање софтвера током 28 сати.
• Цоверосово истраживачко тестирање; ово се фокусира на то како развити повеље и применити истраживачке тестове на АПИ-је.
• Полтек-ов дводневни тренинг за истраживачко тестирање; ово посматра како истраживачки тестови функционишу у Агиле контексту.
• ЛинкедИн-ово истраживачко тестирање; ово показује како је модерно тестирање софтвера обухватило истраживачке провере.
• Цоурсера-ин увод у тестирање софтвера; ово помаже првим испитивачима да разумеју типичне процедуре.
2. Којих је топ 5 питања за интервју о истраживачком тестирању?
Приликом интервјуисања за позиције за истраживачко тестирање, важно је да менаџери за запошљавање постављају добра питања како би прецизно проценили вештине и искуство кандидата.
Првих пет питања која треба поставити су:
• Укључујући њихову подобност, које су главне разлике између тестирања по сценарију и истраживачког тестирања?
• Са којим изазовима сте се сусрели као истраживачки тестер и како сте их превазишли?
• Наведите примере истраживачких тестова који би имали највише користи од роботске аутоматизације процеса.
• По вашем мишљењу, која је најзначајнија вештина (техничка или нека друга) за истраживачког испитивача?
• Шта бисте саветовали испитивачу који се труди да разуме софтвер и како да га провери?
3. Најбољи ИоуТубе туторијали о истраживачком тестирању
Постоји много бесплатних туторијала доступних на веб локацијама за дељење видео записа као што је ИоуТубе, који потенцијалним тестерима могу помоћи да разумеју његове основне принципе. Неки чине део серије, док су други само један видео који дубоко зарони у тему.
Канали који нуде ове туторијале укључују:
• Академија за тестирање, пружа стотине видео снимака који покривају сваки аспект тестирања софтвера.
• Ментор за тестирање софтвера, који на сличан начин нуди обимне видео записе о основама тестирања софтвера.
• КАФок, који такође пружа примере из стварног света и живе пројекте као допуну свим њиховим видео записима.
• СДЕТ-КА Аутоматион Тецхие, који има неколико свеобухватних видео записа о различитим приступима тестирању.
• ГлитцхИТСистем, који прегледа различите веб странице са истраживачким тестирањем како би покушао да открије грешке.
4. Како одржавати истраживачке тестове?
Добро изведени истраживачки тестови укључују снажну документацију на коју се програмери и будући тестери позивају за новије итерације софтвера.
Када постоје значајна ажурирања апликације, поновно тестирање њених примарних функција постаје неопходно како би се осигурало да ови додаци немају негативан утицај на већ постојеће функције.
Ово је једини начин да се гарантује да ће истраживачки тестови остати успешни дугорочно. Такође помаже да се будући планови као што су прелиминарне карактеристике узму у обзир приликом дизајнирања оригиналне апликације и њених провера.
Особље КА мора адекватно планирати ове тестове и схватити када поново проверити апликацију; аутоматизовани алати за тестирање могу помоћи тиму у томе.
5. Да ли је истраживачко тестирање црна кутија?
Истраживачко тестирање је веома слично тестирању црне кутије, које се односи на проверу апликације гледањем њених карактеристика без директног прегледа кода.
Не постоји експлицитно ограничење за типове провера које су под истраживачким тестирањем; овај приступ може да обухвати сваки аспект софтвера, укључујући и код.
Једна од кључних сличности између ова два типа тестирања је недостатак предзнања тестера. Тестери црне кутије обично нису упознати са софтвером пре него што га тестирају, а истраживачки тестери уче како софтвер функционише као део свог почетног испитивања.
Док се истраживачко тестирање уопште не класификује увек као тестирање црне кутије, истина је да постоји значајна разлика између ова два приступа.