Bez ohľadu na to, či programujete softvér pre členov vlastnej spoločnosti alebo pre širokú klientsku základňu, správne postupy a rámce testovania, či už manuálne, automatické alebo hybridné, vedú ku konzistentnej kvalite softvéru, lepšej reputácii a efektívnosti.
V závislosti od spoločnosti, v ktorej pracujete, sa veľa testovania vykonáva formou manuálneho testovania.
Zistite viac o tom, čo je to manuálne testovanie, aké spoločnosti testujú pomocou manuálneho testovania a celý rad ďalších dôležitých informácií o procesoch testovania softvéru.
Čo je manuálne testovanie?
Manuálne testovanie je typ testovania softvéru, pri ktorom tester manuálne vykonáva testovací prípad bez pomoci automatizovaných nástrojov.
Spoločnosti používajú manuálne testovanie ako metódu na identifikáciu chýb alebo problémov vo svojom softvéri. Hoci niektorí to označujú za jednoduchú alebo primitívnu formu testovania, v konečnom dôsledku sa pri nej zisťuje funkčnosť programu bez toho, aby sa museli používať testovacie nástroje tretích strán.
Všetky formy testovania softvéru majú určité manuálne aspekty, pretože existujú funkcie aplikácie, ktoré jednoducho nie je možné otestovať bez určitého manuálneho zásahu.
1. Kedy je potrebné vykonať manuálne testovanie?
Vývojári používajú manuálne testovanie v niekoľkých fázach, pričom prvá z nich je vo fáze vývoja základných funkcií.
Keď je základná funkčnosť softvéru vo vývoji, vývojári softvéru testujú, či jednotlivé časti programu fungujú ručne, pretože je to rýchlejšie ako vytvárať testovacie prípady pre pomerne jednoduché časti kódu.
Manuálne testovanie prevláda aj v posledných fázach vývoja, keď má program vytvorené používateľské rozhranie. Testovanie používateľského rozhrania zahŕňa sledovanie toho, ako reálny používateľ reaguje na spôsob, akým sú navrhnuté ponuky a ako systém funguje.
Keďže ide skôr o množstvo kvalitatívnych údajov a osobných názorov než o čisto kvantitatívne metriky, manuálne testovanie je ideálnou možnosťou na získanie väčšieho prehľadu o produkte.
2. Keď nemusíte vykonávať manuálne testovanie
Existuje niekoľko prípadov, v ktorých by manuálne testovanie zabralo oveľa viac času a úsilia, ako je potrebné, a to predovšetkým v prípade testovania databáz.
Databázy spracúvajú obrovské množstvo údajov a ich manuálne zadávanie by organizácii zabralo veľa času a bolo by neefektívne.
V týchto prípadoch je ideálne použiť automatizované systémy, ktoré dokážu spracovať veľké balíky údajov v obmedzenom čase.
Manuálne testovanie je tiež menej užitočné v oblastiach, ako sú záťažové testy, kde vývojár vykonáva testovanie, aby zistil, ako jeho softvér zvláda veľké zaťaženie používateľmi.
To sa často stáva v prípade online aplikácií a programov so servermi, ktoré si vyžadujú dôkladné posúdenie. Dokončenie manuálnych testov by si vyžadovalo prístup mnohých osôb k aplikácii v jednom čase, čo môže viesť k vysokým nákladom na pracovnú silu pri službe, ktorú môže dokončiť automatizovaný systém testovania softvéru s oveľa nižšími nákladmi.
3. Kto sa podieľa na manuálnom testovaní?
Počet zamestnancov, ktorí sa podieľajú na manuálnom testovaní, závisí od charakteru spoločnosti, v ktorej pracujete.
Niektorí ľudia, ktorí sa podieľajú na procese manuálneho testovania, okrem toho, v akom vývojovom tíme tieto úlohy nájdete:
– Vývojár:
Vývojár je do procesu zapojený priebežne, testuje základnú funkčnosť softvéru a vykonáva aktualizácie kódu v závislosti od spätnej väzby od testerov QA.
Vývojári vykonávajú veľa manuálneho testovania, pretože sú zodpovední za to, aby moduly fungovali na vysokej úrovni už v prvých fázach vývoja softvéru.
– QA tester
Testeri QA, ktorí sú prítomní vo väčších tímoch, vykonávajú výlučne testovanie pre spoločnosť a zabezpečujú, aby aplikácia fungovala tak, ako klient očakáva.
Tester QA je dôležitý predovšetkým vo fázach testovania, integrácie a údržby vývoja, pričom preberá manuálne testovanie od samotných vývojárov, ktorí testujú počas implementácie.
– Manažér QA
V najväčších vývojárskych spoločnostiach prideľujú manažéri QA testerom konkrétne úlohy a oblasti projektu.
Sú tiež zodpovední za vytvorenie zoznamu vecí, ktoré treba dokončiť, a za čítanie správ o testoch. Je to dôležité najmä pri manuálnom testovaní, pretože spokojnosť zamestnancov môže priniesť oveľa lepšie výsledky.
Čo testujeme pomocou manuálnych testov?
Existuje niekoľko rôznych aspektov softvéru, ktoré manuálne testy skúmajú, pričom každý z nich je lepší pri použití manuálneho testovania vďaka špecifickým výzvam testov.
Okrem dôvodov, prečo sa tu manuálnym testom darí, medzi hlavné funkcie, pre ktoré je výhodné používať manuálne testy, patria:
1. Základné funkcie
Jedna z prvých častí procesu testovania softvéru sa zaoberá základnou funkčnosťou softvéru.
V tejto fáze si vývojár alebo tester prezrie jeden z funkčných modulov kódu a posúdi, či funguje podľa očakávaní. Vzhľadom na malý rozsah týchto modulov sa oplatí zamerať na manuálne testovanie, pretože automatizácia by trvala príliš dlho.
Príkladom je databázový softvér, kde testeri vložia do funkcie určitý údaj a už poznajú očakávaný výstup.
Ak sa tieto dve hodnoty zhodujú, test je úspešný. Testovanie v tejto fáze procesu vytvára pevný základ pre zvyšok práce spoločnosti.
2. Návrh používateľského rozhrania
Používateľské rozhranie sa vzťahuje na používateľské rozhranie softvéru alebo na ponuky, tlačidlá a interaktivitu, ktoré má používateľ k dispozícii.
Testovanie používateľského rozhrania sa zameriava na spôsob, akým používateľské rozhranie funguje, a na to, či je pre používateľa pohodlné, vrátane toho, či používateľ môže komunikovať so všetkými funkciami a či sú ponuky esteticky príjemné.
Manuálne testovanie je v tejto fáze nevyhnutné, pretože kvalitatívne informácie, ako napríklad to, či rozhrania vyzerajú dobre, nie sú niečo, v čom by automatizovaný program vynikal.
3. Penetračné testovanie
Penetračné testovanie znamená testovanie softvérového balíka s cieľom zistiť, ako ľahko môže externá strana získať prístup k softvéru nelegitímnymi prostriedkami.
Automatizácia softvéru sa zameriava na dodržiavanie niekoľkých konkrétnych krokov a dokončenie procesov, ktoré sú už súčasťou aplikácie, a nie na skúmanie nových oblastí, čo je pri testovaní bezpečnosti nevyhnutné.
Spoločnosť si napríklad môže najať etického hackera, aby posúdil jej softvér a vyhľadal všetky možnosti prístupu k údajom používateľov, ktoré by mohla mať škodlivá strana.
To je v posledných rokoch, odkedy bolo GDPR prijaté ako súčasť právnych predpisov v celej Európe, čoraz dôležitejšie.
4. Prieskumné testovanie
Prieskumné testovanie sa vzťahuje na testovanie, ktoré sa musí vykonať len raz alebo dvakrát, pričom názov dostalo preto, že je súčasťou „skúmania“ softvéru na akékoľvek neočakávané funkcie alebo chyby.
Manuálne testovanie je v tomto prípade vhodnejšie, pretože napísanie kódu pre testovací prípad zaberie čas a manuálne vstupovanie do softvéru a jeho skúmanie zaberie menej času.
Príkladom je situácia, keď chce vývojár skontrolovať, či je určitá funkcia správne integrovaná, pričom jediným testom overí, či sa údaje v programe pohybujú správne.
Životný cyklus manuálnych testov
V životnom cykle manuálnych testov existuje niekoľko fáz, pričom manuálne testovanie sa používa na skúmanie širokej škály aspektov softvérového balíka.
Niektoré z fáz životného cyklu manuálnych testov zahŕňajú:
– Plánovanie
Naplánujte si kolo testovania, ktoré zahŕňa posúdenie požiadaviek aplikácie, konkrétnych testov, ktoré treba vykonať, a zostavenie, na ktorom softvér testujete.
Táto fáza zahŕňa napísanie všetkých testovacích prípadov pre manuálneho testera a vytvorenie testovacieho prostredia. Buďte dôkladní, aby ste sa vyhli tomu, že manuálni testeri budú náhodne vykonávať testy rôznymi spôsobmi.
– Testovanie:
Vyplňte testy. To zahŕňa viacnásobné prechádzanie testovacích prípadov s cieľom získať konzistentné údaje a zaznamenávanie všetkých získaných informácií.
Ak sa vôbec odchýlite od testovacieho prípadu, zapíšte si, ako a prečo. Rozdiely sa najčastejšie vyskytujú pri end-to-end testoch, ale pri všetkých manuálnych testoch sa môžu vyskytnúť určité rozdiely v spôsobe práce testera.
– Analýza:
Analyzujte všetky výsledky, ktoré ste získali z testov. To zahŕňa zistenie chýb v softvéri a potenciálnych príčin problémov.
Prekročte rámec jednoduchej funkčnosti a začleňte kvalitatívne informácie, ako napríklad zohľadnenie dizajnu aplikácie.
Kvalitatívnym informáciám sa darí najmä pri manuálnom testovaní, keď testeri vytvárajú popisné údaje, ktoré vývojárom poskytujú informácie o drobných úpravách, ktoré výrazne zlepšujú skúsenosti s aplikáciou.
– Implementácia:
Použite predchádzajúce správy na vykonanie celého radu zmien. V závislosti od zmien môže ísť o dlhý proces, počas ktorého vývojári experimentujú s kódom, aby vyriešili chyby, ktoré sa vyskytovali v predchádzajúcich verziách.
Pri používaní manuálneho testovania získajú vývojári ďalšiu výhodu, keď s testerom preberú všetky zmeny. To pomôže obom stranám správne pochopiť, čo je potrebné upraviť a ako to možno upraviť, či už ide o funkčnú alebo dizajnovú zmenu.
– Reštartujte plánovanie:
Zatiaľ čo vývojári vytvárajú opravu problémov v predchádzajúcich testoch, naplánujte ďalšiu sadu testov. To zahŕňa testovanie najnovších aktualizácií a pokusy o obnovenie chýb, ktoré boli prítomné v poslednej verzii.
Tento neustály cyklus testov znamená, že softvér sa vždy zlepšuje a nikdy nie je statický. Manuálne testovanie sa môže zdať zdĺhavé, ale vďaka flexibilite a kontinuite, ktorú ponúka pri opakovaných testoch, sa investícia výrazne vráti.
Výhody manuálneho testovania
Používanie manuálneho testovania v spoločnosti zaoberajúcej sa vývojom softvéru má množstvo výhod, od kvality samotného softvéru až po spôsob, akým projekt ovplyvňuje financie spoločnosti.
Medzi výhody používania manuálneho testovania vo firme patria:
1. Väčšia flexibilita
Na dokončenie automatizácie testovania je potrebné, aby analytik QA vstúpil do softvéru a nakódoval testovací prípad, ktorý zakaždým vykoná presný súbor krokov.
Hoci je to niekedy výhodné, ľudský tester môže prejsť procesom a všimnúť si niečo, čo nie je na svojom mieste, skôr než to preskúma a bez toho, aby musel zmeniť riadok kódu.
To výrazne zvyšuje flexibilitu vašich testov a znamená, že nájdete problémy s programom, ktoré by inak zostali nepovšimnuté, a máte väčšiu možnosť ich odstrániť.
2. Kvalitatívne informácie
Kvalitatívne informácie sa vzťahujú na informácie, ktoré niečo opisujú, a to je typ informácií, ktoré môžu testeri ponúknuť tímu vývojárov.
Manuálny tester môže dať spoločnosti vedieť, či je určité menu „neohrabané“, a vysvetliť prečo, zatiaľ čo automatický program by tento pohľad vývojárovi nemohol poskytnúť.
To znamená, že implementáciou manuálneho testovania do svojich pracovných postupov môžu spoločnosti výrazne zvýšiť úroveň aplikácie spôsobom, s ktorým by pri použití výlučne automatizácie testovania vo svojich procesoch mali problémy.
3. Žiadne obmedzenia zo strany prostredia
Automatizované testovanie sa spolieha na použitie existujúcej platformy, pričom niektoré z nich majú pomerne prísne obmedzenia.
Medzi obmedzenia, ktorým čelia niektoré (aj keď nie všetky) platformy, patrí nemožnosť pracovať s platformami, ako je Linux, možnosť pracovať len s určitým kódovacím jazykom a zvládanie len určitého počtu úloh.
Keď v testovacích procesoch pracujete s ľuďmi, tieto obmedzenia účinne miznú. Obmedzujú vás len zručnosti vašich manuálnych testerov, a nie akékoľvek technické problémy.
To vám pomôže vytvoriť stratégiu testovania, ktorá dôkladnejšie preskúma program bez toho, aby ste museli robiť kompromisy.
4. Umožňuje testovanie použiteľnosti
Testovanie použiteľnosti je typ testovania, pri ktorom sa hodnotí, či je softvér „použiteľný“, vrátane toho, ako vyzerá a ako sa cíti koncový používateľ.
Tento typ testovania presahuje rámec doslovného posúdenia, či je možné funkciu používať, ale skúma, či by si ju niekto vybral namiesto konkurenčných produktov.
Realizácia manuálneho testovania použiteľnosti poskytuje spoločnostiam lepší prehľad a pomáha vykonávať úpravy, ktoré zvyšujú konkurencieschopnosť aplikácie, čo vývojové tímy nemôžu automatizáciou dosiahnuť.
Výzvy manuálneho testovania
Tak ako pri každom type procesu, aj pri používaní manuálneho testovania ako nástroja na zabezpečenie kvality existuje niekoľko problémov.
Ak si uvedomíte tieto problémy, môžete prispôsobiť techniku, ktorú používate pri manuálnom testovaní softvéru, predísť tomu, aby tieto problémy spôsobili vážne problémy, a zvýšiť úroveň programu na konci procesu.
Medzi hlavné výzvy, ktorým čelia spoločnosti pri používaní manuálneho testovania, patria:
1. Úrovne zručností testera
Prvou veľkou výzvou, s ktorou sa treba vysporiadať, je požadovaná úroveň zručností všetkých manuálnych testerov v tíme.
Talentovaní manuálni testeri sú pre spoločnosti jasným prínosom, pretože rýchlejšie lokalizujú chyby a majú istotu, že ich softvér funguje podľa očakávaní. Najlepšie spoločnosti vždy hľadajú manuálnych testerov, ktorí sú špičkou v tejto oblasti, aby zaručili vyššiu úroveň výkonu.
Ako tester sa vždy snažte učiť a rozvíjať tieto zručnosti. Zlepšené zručnosti znamenajú, že spoločnosti prinesiete väčšiu hodnotu, pretože manuálne testovanie nájde viac chýb a zlepší skúsenosti používateľov. Najlepšie manuálne testy pochádzajú od testerov, ktorí strávili čas zdokonaľovaním svojho remesla.
2. Náklady na testovanie
Manuálne testovanie je bežným procesom pre podniky všetkých veľkostí, ale v závislosti od spôsobu, akým manuálne testovanie používate, sa náklady môžu zvýšiť.
Napríklad spoločnosť, ktorá má niekoľko vysokokvalifikovaných pracovníkov v oblasti testovania, môže v prípade opakovaného testovania minúť veľa peňazí, pretože v skutočnosti platíte za čas všetkých prítomných. Pri automatizovaných testovacích procesoch je to menší problém.
Ideálnym riešením tohto problému je plánovanie dopredu, pretože čím viac času venujete plánovaniu testov, ktoré vykonávate, a poradiu, v akom ich vykonávate, tým je menšia pravdepodobnosť, že sa zvýšia náklady na zamestnancov, pretože ľudia vykonávajú testy, ktoré nemusia.
3. Časová náročnosť
Počítače sú rýchlejšie ako ľudia vo všetkých možných veciach, od plánovania šachového ťahu až po investovanie peňazí na burze alebo dokonca jednoduché stlačenie tlačidla po zmene farby. Rovnaká koncepcia platí aj pri testovaní, keď si používatelia nájdu čas na prečítanie všetkých informácií a navigáciu v ponukách.
Manuálne testovanie preto môže trvať oveľa dlhšie ako testovanie pomocou automatizácie. Zabráňte tomu kombináciou manuálnych a automatizovaných testov, pričom manuálnym testerom odoberiete podradné úlohy a namiesto toho ich využijete tam, kde sú potrebné odborné znalosti. Zjednodušenie procesov je ideálne aj pre manuálne testovanie, pretože odstráni čo najviac krokov.
4. Možnosť výskytu chýb
Ľudia robia chyby. Je to prirodzené, či už v podobe nesprávneho poradia krokov v teste, alebo nepresného zápisu výsledkov v dôsledku nesprávneho kliknutia. Tieto chyby však môžu spôsobiť vážne problémy s presnosťou režimu testovania softvéru.
Manuálni testeri, ktorí sú viac unavení alebo unavení z opakovaného plnenia rovnakej úlohy, sa častejšie dopúšťajú chýb ako ostatní, preto používajte automatizáciu, aby ste tomu predišli, ak je to možné, alebo dávajte testerom pravidelné prestávky od obrazovky, pretože vďaka tomu sú pozornejší na to, čo sa deje.
Manažéri môžu zvážiť aj riadenie pracovnej záťaže, aby zabránili vyhoreniu ľudí a ich problémom.
Charakteristika manuálnych testov
Existuje niekoľko hlavných charakteristík, ktoré treba pri manuálnych testoch sledovať. Definujú, čo je to manuálny test, a sú to dôležité funkcie, ktoré môžete pri navrhovaní testov zohľadniť.
Prečítajte si viac o niektorých hlavných charakteristikách manuálnych testov a o ich význame v prostredí aktívneho testovania:
1. Optimalizované testovacie prípady
Pri manuálnom testovaní sú testovacie prípady vysoko optimalizované. Ide o pokyny, ktoré má manuálny tester pred dokončením testu, pričom vysoká úroveň optimalizácie vedie k tomu, že testovací tím šetrí čas a zdroje, pretože vykonáva menej úloh.
Vždy sa snažte obmedziť veľkosť testovacieho prípadu, ak je to možné, aby ste čo najlepšie využili dostupné zdroje.
2. Zrozumiteľnejšie metriky
Najlepšie manuálne testovanie má zrozumiteľnejšie metriky. Ak automatizácia testovania neustále generuje komplexné štatistiky a informácie, prehľad, ktorý tieto metriky môžu poskytnúť, nestojí za čas, ktorý by manuálny tester potreboval na ich vyplnenie alebo výpočet.
Alternatívou sú manuálne testy, ktoré zahŕňajú oveľa jednoduchšie metriky, ktoré sa ľahko generujú a ich neskoršia analýza zaberie menej času.
3. Inteligentné vykazovanie
Manuálne testovanie vedie k inteligentnejším správam od testovacieho tímu. Automatizované testy generujú na konci procesu vlastné správy, čo vedie k tomu, že všetky správy majú rovnaký formát.
Ľudskí testeri sú oveľa flexibilnejší a môžu si vytvárať vlastné správy a v prípade potreby pridávať akékoľvek informácie, ktoré považujú za užitočné pre vývojový tím.
4. Opätovné spustenie stratégií
Stratégie opakovaného spustenia sa vzťahujú na spôsob, akým testovací tím opakovane vykonáva testy a zhromažďuje údaje z opakovaných prípadov vykonávania úloh.
Manuálne testovanie znamená, že stratégie opätovného spustenia sú oveľa flexibilnejšie, pričom testeri môžu dokončiť viac testov, ak si myslia, že je potrebné ešte niečo preskúmať.
Niektoré manuálne testy tiež aktívne podporujú variabilitu činností, ktoré používateľ vykonáva, čím poskytujú údaje zo širšieho rozsahu správania. Tým sa získa viac údajov o softvéri a vytvoria sa ucelenejšie stratégie aktualizácie do budúcnosti.
Typy manuálnych testov
Spoločnosti používajú tri rôzne typy manuálneho testovania, ktoré sa líšia úrovňou prístupu testerov. Každý typ je užitočný vo svojom vlastnom kontexte.
Medzi hlavné typy manuálnych testov patria:
1. Testovanie bielej skrinky
Testovanie bielej skrinky je forma testovania, ktorá zahŕňa možnosť testerov vidieť celý zdrojový kód a dokumentáciu návrhu softvéru.
Táto vyššia úroveň prístupu znamená, že tester môže vidieť všetky jednotlivé aspekty kódu a ich vplyv na fungovanie softvéru. To je ideálne pre najranejšie fázy procesu vývoja, pretože vývojári sa môžu manuálne pozrieť na svoj vlastný kód, porovnať ho s testovacími prípadmi a ľahko nájsť oblasť, ktorá spôsobuje významné problémy, ešte pred opravou existujúcich chýb.
2. Testovanie čiernej skrinky
Testovanie čiernej skrinky označuje formu testovania, pri ktorej testeri nevidia nič z toho, čo sa deje za používateľským rozhraním. To znamená, že neexistuje žiadny prístup ku kódu ani k dokumentácii návrhu, pričom testeri pristupujú k softvéru bez akýchkoľvek znalostí.
Manuálni testeri využívajú tento prístup v neskorších fázach procesu vývoja, pretože akceptačné testovanie používateľov a testovanie end-to-end si vyžaduje skôr pohľad koncového používateľa než niekoho, kto sa podieľa na procese vývoja.
3. Testovanie šedej škatule
Testovanie šedej skrinky je kombináciou testovania čiernej a bielej skrinky a vyžaduje, aby mal tester možnosť nahliadnuť do časti dokumentácie a zdrojového kódu. Kombinuje sa tak výhoda, že je možné vidieť potenciálne príčiny akýchkoľvek problémov a zároveň obmedziť informácie, čo pomáha pri funkciách, ako je napríklad spracovanie údajov.
Používajte manuálne testovanie šedej škatule v stredných fázach procesu vývoja, pričom testerom poskytnete ďalšie informácie, ale stále sa budú musieť spoliehať na vlastnú intuíciu v prípade mnohých funkcií, aby sa zabezpečilo, že koncový používateľ bude môcť pochopiť systémy.
Vyjasnenie niektorých nejasností – manuálne testovanie a automatické testovanie
Pri testovaní softvéru existujú dve rôzne disciplíny, manuálne testovanie a automatické testovanie. Napriek tomu, že obe majú v podstate rovnakú funkciu, ide o odlišné disciplíny, ktoré spoločnosti používajú na preskúmanie svojich softvérových balíkov.
Prečítajte si viac informácií o tom, čo je to automatické testovanie, aký je rozdiel medzi automatickým a manuálnym testovaním a kedy je vhodné použiť každý z týchto dvoch typov testovania v procese zabezpečenia kvality softvéru.
1. Čo je to automatické testovanie?
Automatizované testovanie je proces, pri ktorom tester používa nástroj tretej strany na automatizáciu softvéru a skúma softvér, ktorý opakovane vykonáva rovnaký proces, aby sa uistil, že pre organizáciu funguje na dostatočne vysokej úrovni. Hlavnou výhodou automatizácie testov je, že je to oveľa rýchlejší proces, najmä pri vykonávaní podradných úloh, ako je napríklad zadávanie údajov.
Príkladom je testovanie databázy, či správne spracúva všetky informácie, zadávanie tisícov údajov do softvéru v priebehu niekoľkých okamihov a následné vyhodnotenie výsledkov.
Spoločnosti používajú automatizačné testovanie predovšetkým na veľké a veľmi opakujúce sa úlohy. Keďže automatizovaný systém sa nedopustí drobných chýb, ako je zadanie nesprávnej informácie alebo kliknutie na nesprávny odkaz.
Medzi hlavné softvéry, ktoré to využívajú, patria živé servery a databázy, pretože spracúvajú veľké množstvo informácií a vysoké zaťaženie používateľov, čo si vyžaduje formu testovania, ktorá zodpovedá týmto požiadavkám.
2. Aký je rozdiel medzi manuálnymi a automatizovanými testami?
Hlavným rozdielom medzi manuálnymi a automatizovanými testami je spôsob ich vykonania.
Manuálny test sa spolieha výlučne na človeka, ktorý testovanie dokončí, sleduje testovací prípad až do konca a potom zaznamená všetky informácie.
Pri automatizovaných testoch je počítačový program zodpovedný za dokončenie testovacích prípadov po tom, čo ich pôvodne napísal analytik QA.
Niektoré automatizované testovacie platformy tiež generujú vlastné správy pre používateľov, čím obmedzujú čas, ktorý musí niekto stráviť zhromažďovaním všetkých údajov z experimentu. Namiesto toho môžu svoj čas venovať generovaniu opravy problémov, ktoré softvérový balík má.
3. Záver: Manuálne testovanie vs. automatizované testovanie
Medzi manuálnym a automatizovaným testovaním existujú niektoré zásadné rozdiely, pričom tieto dva koncepty sú založené na úplne odlišných základoch, aby správne fungovali.
Môžu však úzko spolupracovať na mnohých vývojových projektoch. Použitím automatizovaného testovania pri niektorých náročnejších úlohách a použitím techník manuálneho testovania pri úlohách, ktoré sa spoliehajú na väčšiu flexibilitu, môžete výrazne urýchliť procesy testovania.
Jedným z najväčších omylov v súvislosti s testovaním je, že máte pred sebou binárnu voľbu, ale to nemôže byť ďalej od pravdy pre akýkoľvek efektívny tím zabezpečenia kvality.
Vyvrátenie 5 mýtov o manuálnom testovaní
Existuje niekoľko mýtov, ktorým ľudia veria v súvislosti s manuálnym testovaním, pričom každý z nich vedie ľudí k tomu, aby sa riadili menej ako ideálnymi metódami a komplikuje získavanie výsledkov viac, ako je potrebné.
Medzi päť hlavných mýtov týkajúcich sa manuálneho testovania patrí:
1. Testovanie je jediné oddelenie zodpovedné za kvalitu výrobkov
Kvalita výrobkov je úlohou celej spoločnosti, nielen tímu zabezpečenia kvality.
Cieľom testovania softvéru je odstrániť chyby, kdekoľvek je to možné, čo znamená, že veľa ľudí považuje odstraňovanie a vyhľadávanie chýb za jedinú zodpovednosť tímu QA. Naopak, samotní vývojári sú zodpovední za písanie kódu, zatiaľ čo manažérsky tím je zodpovedný za organizáciu vývoja.
Každý, kto má v spoločnosti nejakú úlohu, nesie určitú zodpovednosť za vytvorenie produktu na dostatočne vysokej úrovni, namiesto toho, aby sa spoliehal na to, že testovací tím nájde všetky problémy a produkt potom čo najskôr dodá.
2. Na manuálnom testovaní už nezáleží
S nárastom umelej inteligencie a čoraz bežnejšou robotickou automatizáciou procesov sa niektorí domnievajú, že manuálne testovanie už nemá pri vývoji softvéru význam. Spoločnosti vidia relatívne lacnú automatizáciu a rozhodnú sa ísť touto cestou všade, kde je to možné.
Manuálne testovanie zostáva pre spoločnosť jedným z najdôležitejších nástrojov vďaka jeho užitočnosti pri testovaní E2E, čiernej skrinky a grafického rozhrania. Zavedením manuálneho testovania spoločnosti nájdu problémy v softvéri, ktoré by inak automatizácia prehliadla, čím sa ich produkt zlepší viac, než by mohli dosiahnuť samotnou automatizáciou.
3. Je to pre ľudí, ktorí nevedia kódovať
Jedným z hlavných predpokladov niektorých ľudí je, že ľudia, ktorí nevedia kódovať, si namiesto toho vyberajú testovanie.
To však zďaleka nie je pravda. Znalosť kódu je v mnohých testovacích úlohách nevyhnutná, pričom testovanie šedej a bielej škatule sa spolieha na čítanie kódu a pochopenie toho, ako môže prispieť k chybám, ktoré sa v softvérovom balíku vyskytujú.
Predpokladom, že do testovania sú zapojení len ľudia, ktorí nevedia kódovať, sa potenciálne obmedzujete na to, že vo vašom tíme budú testovací pracovníci na nižšej úrovni. Ak ste tester, zvážte absolvovanie kurzu kódovania, aby ste zlepšili svoje štandardy.
4. Môžete vytvoriť softvér bez chýb
Niektorí ľudia prichádzajú do odvetvia manuálneho testovania s predpokladom, že tím zabezpečenia kvality dokáže nájsť každú chybu v softvéri a pomôcť vývojovému tímu pri jej riešení.
Teoreticky by to malo viesť k produktu, ktorý nemá žiadne chyby a úplne uspokojí zákazníka. To je, samozrejme, ideálny konečný cieľ testovania softvéru, ale málokedy je to možné.
Aj tie najvyladenejšie softvérové balíky od najväčších spoločností na svete sa dodávajú s chybami, a hoci cieľom by malo byť čo najviac znížiť počet chýb, nie je na škodu, ak sa pár drobných problémov dostane do finálnej verzie. Z tohto dôvodu je dôležité manuálne testovanie a vývoj po vydaní.
5. Testovanie neprináša žiadnu pridanú hodnotu
Jedným z najväčších mýtov o akejkoľvek forme testovania softvéru je, že neprináša žiadnu pridanú hodnotu softvérovému balíku. Klienti si však vždy cenia kvalitu ako jeden z najdôležitejších aspektov aplikácie, pričom chybné alebo nekvalitné programy okamžite strácajú svojich používateľov, ktorí hľadajú alternatívy.
Vyladený produkt je pre spoločnosť oveľa cennejší ako produkt, ktorý nefunguje správne, a základom tejto práce je efektívne testovanie. Špičkové testovanie vedie k významným ziskom, ak sa spoločnosti rozhodnú správne investovať.
Stručne povedané, hybridná stratégia manuálneho a automatického testovania vždy prinesie lepší výsledok testovania ako ktorákoľvek z týchto stratégií, ak sa použije výlučne.
Čo potrebujete na začatie manuálneho testovania?
Existuje niekoľko vecí, ktoré potrebujete na začatie procesu manuálneho testovania, a ak máte všetky tieto funkcie k dispozícii, je testovanie nielen jednoduchšie, ale predovšetkým možné.
Niektoré z vecí, ktoré potrebujete na začatie manuálneho testovania, zahŕňajú:
1. Softvér
Prvou vecou, ktorú tester potrebuje na testovanie softvéru, je samotný softvér. Koniec koncov, manuálne testovanie je v podstate nemožné, ak nie je k dispozícii nič, čo by sa dalo testovať.
Účinný test softvéru zahŕňa použitie najnovšej iterácie softvéru, pretože obsahuje všetky relevantné zdrojové kódy pre potreby používateľa a je spravodlivejšou reprezentáciou produktu v jeho súčasnej podobe.
Ak je to možné, skompilujte aplikáciu úplne nanovo, aby ste získali čo najpresnejší pohľad na softvér.
2. Požiadavky na softvér
Tester musí mať prístup k požiadavkám na softvér. Netýka sa to hardvéru alebo operačného systému, ktorý balík potrebuje, ale skôr stručného opisu softvéru, na ktorom vývojár pracuje.
Podrobnejšie požiadavky na softvér vo fáze testovania znamenajú, že pracovníci oddelenia kontroly kvality od začiatku hľadajú všetky dôležité funkcie, zaznamenávajú prípadné problémy v softvéri a odporúčajú úpravy.
Bez toho tester pracuje bez akéhokoľvek usmernenia a nevie, či sú informácie, ktoré poskytuje, pre vývojový tím skutočne užitočné.
3. Vhodný hardvér
Testovanie softvéru si vyžaduje hardvér, ktorý spĺňa potreby spusteného programu.
Ak napríklad tester hľadá chyby alebo problémy v novej videohre, ktorá si vyžaduje pokročilý hardvér, a má k dispozícii len počítač nízkej úrovne, nebude môcť softvér správne otestovať.
V prípade malých aplikácií alebo webových nástrojov je to menší problém. Pred začatím testovania sa uistite, že hardvér, ktorý používate, zodpovedá potrebám softvéru, a vyberajte ho po konzultácii s vývojovým tímom o požiadavkách na softvér.
Proces manuálneho testovania
Pri procese manuálneho testovania je potrebné vykonať niekoľko krokov, pričom každý z nich sa podieľa na presnom prehľade vášho programu.
Tieto kroky zahŕňajú:
1. Analýza požiadaviek
Prvým krokom v procese manuálneho testovania je analýza požiadaviek aplikácie. Zahŕňa to konkrétne požiadavky uvedené v zadaní aplikácie, niektoré funkcie návrhového dokumentu a všetky ďalšie časti programu, ktoré očakávate (napríklad právne požiadavky).
Ich analýza na začiatku procesu znamená, že pri skúmaní softvéru viete, čo testujete.
2. Vytvorenie plánu testovania
Keď viete, čo je potrebné otestovať, vytvorte plán testovania. To znamená, že musíte vedieť, aké funkcie testujete, ako ich presne testujete a kedy v procese testovania ich dokončíte.
Vytvorením plánu testovania sa uistíte, že všetky potrebné testy sú pripravené vopred a že náhodou nevynecháte žiadne funkcie.
Pomáha to aj pri riadení pracovných síl, pretože viete, koľko manuálnych testerov potrebujete a kedy.
3. Napíšte testovacie prípady
Začnite písať testovacie prípady pre softvér. Testovací prípad je súbor udalostí, ktoré sa vykonávajú pri testovaní softvéru a ktoré sa zakaždým dôsledne dodržiavajú, aby sa zabezpečilo, že ide o spravodlivý test.
V každom prípade premýšľajte o konkrétnom manuálnom teste, na ktorom pracujete, a uveďte čo najviac podrobností, pretože sa tým znižuje pravdepodobnosť, že sa niekto odchýli od pôvodného plánu.
4. Preskúmajte svoje prípady
Po napísaní všetkých testovacích prípadov vykonajte dôkladnú kontrolu. To znamená, že testovacie prípady sa odovzdajú členovi manažmentu, najlepšie manažérovi QA.
Zapojením tretej strany do procesu korektúry zvýšite úroveň testovacích prípadov tým, že odstránite všetky prípadné chyby. Manažér môže navrhnúť vylepšenia, ktoré v konečnom dôsledku zefektívnia manuálne testovanie a pomôžu vám nájsť prípadné problémy v aplikácii.
Pred vykonaním testov sa uistite, že každý testovací prípad je overený.
5. Vykonajte manuálne testy
Keď manažér potvrdí testovací prípad, začnite vykonávať testy. Postupujte podľa nich v poradí, ktoré ste stanovili na samom začiatku procesu, aby ste sa uistili, že ste dokončili každý test a zabezpečili, že ľudia budú testy vypĺňať pomaly a pozorne.
Správne vykonanie testov v 100 % prípadov vám ušetrí veľa času, pretože v niektorých prípadoch urobíte chybu a budete sa musieť vrátiť a znovu overiť, či sú výsledky presné.
Zaznamenávajte si informácie priebežne, aby ste znížili pravdepodobnosť zabudnutia kľúčových informácií.
6. Nahlásiť všetky chyby
Po dokončení manuálnych testov a zistení chýb dokončite proces nahlasovania.
Ide o spísanie správy pre vývojový tím, v ktorej uvediete všetky chyby, miesto, kde ste ich našli, a kroky, ktoré ste podnikli na ich obnovenie. Do testovania zahrňte všetky údaje, ktoré ste vygenerovali.
Pri kvalitatívnejších testoch podrobne rozoberte dizajn aplikácie, všetky problémy, ktoré ste mali, a niektoré potenciálne opravy, ktoré by aplikáciu urobili používateľsky prívetivejšou.
Nezabudnite, že práve v tejto fáze manuálne testovanie skutočne vyniká nad automatizáciou, pretože manuálni testeri môžu poskytnúť kvalitatívne informácie, ktoré automatizácia často nemôže poskytnúť.
Osvedčené postupy pre manuálne testovanie
Osvedčené postupy sa vzťahujú na niektoré veci, ktoré sú spoločné pre všetky typy manuálneho testovania a ktoré pomáhajú zlepšiť štandard testovacieho procesu. Dodržiavanie osvedčených postupov v konečnom dôsledku znamená, že získate vysokokvalitný test, ktorý má presné a spoľahlivé výsledky.
Medzi osvedčené postupy, ktoré je potrebné mať na pamäti pri procese manuálneho testovania, patria:
1. Zamerajte sa na jasnosť
Dôraz na prehľadnosť v celom procese manuálneho testovania je nevyhnutnosťou.
Čo najjasnejšia formulácia znižuje možnosť nesprávnej komunikácie medzi oddeleniami a odborníkmi a pomáha udržať sústredenie ľudí na prácu na správnych oblastiach softvéru. To je dôležité najmä pri manuálnom testovaní, pretože je tu väčší priestor na interpretáciu pokynov.
Patrí sem napísanie jasného testovacieho prípadu, ktorý má tester sledovať, zaznamenávanie výsledkov jednoduchým a zrozumiteľným spôsobom a pomoc všetkým v organizácii pri pochopení požiadaviek na aplikáciu.
2. Používajte priebežnú kontrolu
Všetko v procese testovania kontrolujte tak často, ako je to len možné.
Efektívny proces revízie zahŕňa venovanie pozornosti spôsobu, akým zamestnanci vykonávajú svoju prácu, preskúmanie testovacích prípadov s cieľom overiť, či stále fungujú tak, ako očakávate, a preskúmanie samotného softvéru s cieľom zabezpečiť pokrok.
Sledovanie kvality každého jedného aspektu procesu zaručuje, že sa štandardy neskĺznu a že od začiatku až do konca získate dostatočne vysokú úroveň výstupov.
3. Nehľadajte len chyby
Niektorí ľudia si myslia, že hlavným cieľom testovania softvéru je nájsť chyby, ale to zďaleka nie je pravda. Súčasťou tohto procesu je aj zabezpečenie vysokého výkonu aplikácie, jej predvídateľného chodu a komfortu pre používateľa.
Táto použiteľnosť je napokon hlavným cieľom manuálneho testovania, pretože je takmer „neautomatická“.
Ak pri sledovaní testovacieho prípadu nájdete nejaké chyby, zahrňte ich do správy, ale vychádzanie z cesty a hľadanie chýb, ktoré nie sú relevantné pre test, môže vývojárov zmiasť a proces posunúť do úzadia.
Typy výstupov z manuálneho testu
Existuje niekoľko rôznych typov výstupov, ktoré môžete získať z manuálneho testu, pričom každý z nich ponúka jedinečný pohľad na fungovanie aplikácie.
Medzi typy výstupov, ktoré môžete získať z manuálnych testov, patria:
1. Záznam o závadách
Protokol o chybách je zoznam alebo dokument plný všetkých problémov, ktoré sa vyskytli pri testovaní softvéru. Čím dlhší je záznam o chybách, tým viac problémov si vyžaduje opravu softvéru.
Tie môžu byť buď automatické, alebo napísané manuálne testerom, pričom manuálni testeri plnia túto úlohu vo viac kvalitatívnych aspektoch programu, keďže automatické platformy nie sú schopné vytvoriť si názor na kvalitu softvéru a jednoducho generujú metriky.
2. Kvalitatívne údaje
Ide o ústnu a písomnú spätnú väzbu, ktorú manuálny tester predkladá vývojovému tímu, zvyčajne po ukončení série testov, ako je napríklad užívateľský akceptačný test.
Testovanie UAT sa zameriava na to, aby sa priemerný používateľ mohol so softvérom spokojný a aby ho používal podľa očakávania, čo znamená iné zameranie v porovnaní s aspektmi, ako je testovanie funkcií.
Kvalitatívne údaje sa získavajú buď formou diskusie s vývojárom, alebo formou rozsiahlej písomnej správy.
3. Chybové hlásenia
Chybové správy sú krátke textové reťazce, ktoré uvádzajú, či v softvérovom balíku došlo k chybe, a ak áno, aká je jej povaha.
Väčšina vývojárov napíše dôkladný systém, ktorý opisuje, čo je problém a prečo k nemu dochádza, a používa kódy chýb na zúženie problému. Ak si vývojár zaznamená všetky chybové hlásenia v softvéri, okamžite pozná príčinu vzniknutého problému a vie, aké kroky môže podniknúť na jeho vyriešenie.
Príklady manuálnych testov
Existuje niekoľko príkladov manuálneho testovania, ktoré môžete zvážiť, keď sa dozviete viac o tom, ako postupovať v procese manuálneho testovania. Každá z nich je špecifickou testovacou disciplínou, ktorá sa uskutočňuje v určitom bode vývojového cyklu a ponúka vývojárom viac informácií a návodov na zlepšenie ich produktu.
Medzi príklady manuálnych formátov testov patria:
1. Testovanie jednotiek
Testovanie jednotiek je proces, pri ktorom sa uisťujeme, že každá jednotlivá jednotka softvérového balíka funguje tak, ako sa očakáva. Jednotka alebo modul označuje jednu funkciu, ktorá sa kóduje samostatne pred tým, ako sa na konci procesu skompiluje do jedného väčšieho softvérového balíka.
Príkladom je databáza, kde niekto môže otestovať funkciu „SORT“, aby sa uistil, že správne organizuje údaje pred jej začlenením do širšieho balíka.
Hlavnou výhodou dokončenia testovania jednotiek je skutočnosť, že pochopíte, že všetky systémy fungujú správne samy o sebe, pričom akékoľvek problémy, ktoré sa vyskytnú v neskorších fázach, pochádzajú zo spôsobu, akým sa všetky funkcie navzájom integrujú.
Manuálne vykonávanie týchto testov je rovnako dôležité, pretože šetrí čas, ktorý by sa strávil kódovaním zložitých automatických testovacích prípadov.
2. Testovanie od konca ku koncu
End-to-end testovanie je proces testovania celej aplikácie, od prvého otvorenia softvéru až po dokončenie všetkých jeho funkcií.
Dobrým príkladom end-to-end testovania je mobilná aplikácia, ktorá vypočíta, koľko zarobíte na daniach, pričom tester si stiahne aplikáciu a prejde všetkými funkciami, aby získal konečný výpočet. Tester zaznamená všetky problémy, ktoré mal, a odovzdá ich vývojárom.
Vývojári profitujú z toho, že túto formu testovania vykonávajú predovšetkým manuálni testeri, pretože je to príležitosť zistiť, ako všetky jednotky softvéru fungujú spoločne, pričom toto testovanie v neskorej fáze zaručuje, že aplikácia po zostavení všetkých jednotiek funguje správne.
End-to-end testovanie sa líši od užívateľského akceptačného testovania, pretože end-to-end je primárne interný proces, na rozdiel od externého procesu užívateľského akceptačného testovania, ktorý je zameraný na verejnosť.
3. Používateľské akceptačné testovanie
Používateľské akceptačné testovanie je poslednou fázou procesu testovania softvéru a zahŕňa uistenie sa, že produkt je vhodný pre zamýšľanú klientsku základňu produktu. To zahŕňa aj poskytnutie prístupu k aplikácii potenciálnym klientom, aby ju mohli používať a poskytnúť spätnú väzbu.
Jedným z najbežnejších príkladov používateľského akceptačného testovania v modernom vývoji softvéru je alfa a beta testovanie videohier, v rámci ktorého hráči hrajú hru a hlásia prípadné problémy, ktoré sa v nej vyskytujú.
Hlavnou výhodou realizácie používateľského akceptačného testovania je, že získate externý pohľad na váš produkt a nebudete sa spoliehať na pohľad ľudí, ktorí sa aktívne podieľali na tvorbe produktu, čím sa odstráni možnosť ovplyvnenia testovania zaujatosťou. Manuálne testovanie je nevyhnutné, pretože automatický systém nedokáže presne replikovať nálady zákazníkov.
Typy chýb a nedostatkov zistených manuálnym testovaním, ktoré automatizované testovanie prehliadne
Pri manuálnom testovaní sa nájdu rôzne chyby, nedostatky a problémy, rovnako ako pri automatizovanom testovaní. V softvéri však existujú niektoré problémy, ktoré manuálne testovanie dokáže odhaliť a ktoré by automatizácia vynechala.
Medzi hlavné typy chýb a omylov pri manuálnom testovaní patria:
1. Zlý pracovný postup
„Pracovný postup“ sa vzťahuje na cestu, ktorou sa používateľ dostane do určitého bodu aplikácie a dokončí proces. Hoci s niektorými pracovnými postupmi nemusí byť technicky nič v poriadku, stále môžu byť problematické, pretože cesta nemusí laikovi dávať zmysel.
V týchto prípadoch manuálny tester informuje vývojára o problémoch s návrhom a odporučí zmeny, čím pomôže používateľom, aby sa s aplikáciou lepšie zoznámili spôsobom, ktorý by si automatizované systémy neuvedomili.
2. Grafické problémy
Webové aplikácie fungujú na rôznych zariadeniach, pričom rozlíšenia a veľkosti monitorov sa neustále menia v závislosti od telefónu, tabletu alebo obrazovky, ktorú má používateľ k dispozícii.
V zle optimalizovanej aplikácii by to mohlo viesť k tomu, že sa aktíva roztiahnu a budú vyzerať horšie na menej používaných zariadeniach, pričom automatizačné nástroje budú jednoducho sledovať ponuky a nevšimnú si to.
Manuálni testeri môžu pomocou rôznych zariadení nájsť grafické chyby, ktorých oprava spôsobí, že používatelia budú mať so softvérovým balíkom lepšie skúsenosti.
3. Nepresné odkazy
Niektoré webové lokality alebo aplikácie boli prepojené s webovými lokalitami sociálnych médií prostredníctvom série tlačidiel a vložených odkazov. Tie však nemusia vždy odkazovať na správne miesto v dôsledku preklepu alebo chyby v procese vývoja, čo automatický systém nemusí vždy nájsť.
Odkazy smerujúce na nesprávne miesto môžu spôsobiť zmätok a výrazne poškodiť retenciu. Manuálni testeri prechádzajú všetky odkazy v programe a zabezpečujú, aby viedli na správne miesto, čím pomáhajú koncovým používateľom dostať sa tam, kam chcú, a nie byť zavádzaní problémom.
Bežné metriky manuálneho testovania
Metriky sú jednoduché a merateľné číselné hodnoty, ktoré niečo naznačujú po skončení testu. Všetky majú kvantitatívny charakter, čo uľahčuje ich posúdenie z pohľadu vývojára.
Medzi najbežnejšie metriky manuálneho testovania, ktoré testeri používajú, patria:
1. Vady
Metrika chýb je relatívne jednoduchá a týka sa počtu chýb alebo nedostatkov, ktoré sú prítomné v softvérovom balíku. Chyba je akýkoľvek prípad, keď softvér nefunguje podľa očakávaní, od funkčnosti softvéru až po spôsob, akým funguje grafika. analýza chýb ako metriky je relatívne jednoduchá, pričom viac chýb predstavuje pre spoločnosť väčší problém.
Sledovaním toho, či sa počet chýb zvyšuje alebo znižuje od iterácie k iterácii, môžete lepšie pochopiť, či sa kvalita softvéru posúva správnym smerom, pretože sa neustále aktualizuje.
2. Chyby za hodinu testovania
Chyby na hodinu testovania vychádzajú z metriky chýb a pridávajú ďalšie podrobnosti, pričom počet chýb sa delí počtom hodín, ktoré testeri strávili nad softvérom.
Napríklad jednoduchý webový nástroj s piatimi chybami, ktorého spustenie trvá dve minúty, by vyzeral lepšie ako nástroj s desiatimi chybami, ktorý používate hodinu so základnou metrikou.
Vykonaním tohto ďalšieho výpočtu získajú manuálni testeri lepšiu predstavu o hustote chýb, pochopia, ako často sa používateľ môže stretnúť s chybou a či to vážne ovplyvní jeho čas strávený s aplikáciou.
Vyváženie chýb v porovnaní s veľkosťou aplikácie je vždy prospešné pre kontextualizáciu problémov.
3. Percentuálny podiel úspešných testovacích prípadov
Niektoré testovacie prípady prebiehajú na základe jednoduchého hodnotenia vyhovel/nevyhovel a táto metrika poskytuje percento testovacích prípadov, ktoré vyhovujú. Čím vyššie je percento úspešných testovacích prípadov, tým lepšie aplikácia funguje.
Ak je to možné, pokúste sa použiť percentuálny podiel úspešných testovacích prípadov na základe jednotlivých funkcií, a nie pri skúmaní celej aplikácie. To poskytuje podrobnejšie informácie o tom, čo funguje a čo nie, a pomáha vývojárom vykonať zmeny tam, kde je to potrebné, namiesto toho, aby sa vykonávalo ďalšie skúmanie a zisťovalo sa, kde presne je problém. Čím skôr nájdete príčinu problému, tým lepšie.
7 chýb a nástrah pri implementácii manuálnych testov
V odvetví testovania softvéru sa bežne vyskytuje niekoľko chýb, z ktorých každá môže viesť k tomu, že sa chyby nenájdu a testovanie trvá dlhšie, ako sa očakávalo, čo je spojené s vyššími nákladmi.
Medzi hlavné chyby a nástrahy, na ktoré si treba dávať pozor a vyhnúť sa im pri implementácii manuálneho testovania, patria:
1. Samotná oprava chyby
V niektorých fázach vývojového procesu je vývojár osobou zodpovednou za testovanie kódu aj za opravu problému. To by mohlo viesť k tomu, že sa pokúsia vyriešiť problémy so softvérom sami napriek tomu, že nemusia úplne rozumieť príčine problému.
Ak je to možné, snažte sa zabezpečiť, aby bol tester a osoba, ktorá kóduje riešenie, jasne rozdelení. Týmto rozlíšením znížite pravdepodobnosť, že sa príliš sústredíte na opravu konkrétnej zistenej chyby namiesto toho, aby ste zohľadnili zvyšok softvéru.
Vždy rozdeľujte prácu, ak je to možné, aby ste získali širšie spektrum odborných znalostí o danej problematike.
2. Rýchle absolvovanie testov
Niektoré softvéry majú veľmi krátke termíny vydania, čo môže spôsobiť, že sa testeri sústredia na rýchlejšie vykonanie testov, aby sa dosiahol cieľový dátum. Je to vážna chyba, pretože hrozí riziko, že sa do systému dostanú závažné chyby. Manuálne testovanie môže tento problém ešte zhoršiť, pretože ľudia cítia tlak a aktívne sa ponáhľajú.
Pri dokončovaní testovacích prípadov sa snažte venovať čo najviac času, pozorne si prejdite každý krok a dôkladnejšie si zapíšte údaje. Aj keby ste museli mierne oddialiť vydanie, je lepšie dodať kompletný produkt ako produkt, ktorý používatelia nebudú využívať kvôli zlým štandardom.
3. Zlá komunikácia
Komunikácia v tíme je pri každom projekte vývoja softvéru prvoradá, ľudia musia získať čo najviac informácií od svojich spolupracovníkov a využiť ich na zlepšenie produktu. To platí pre neustálu konverzáciu medzi oddeleniami, ako aj v rámci jedného oddelenia.
Čím efektívnejšie komunikuje tím QA s vývojármi, tým lepšie majú usmernenia pri tvorbe aktualizácií, pričom všetci spoločne profitujú z vydania produktu najvyššej úrovne.
Manuálne testovanie umožňuje lepšiu komunikáciu, pretože tester má úplnú predstavu o skúsenostiach a poskytuje viac jasnosti a detailov.
4. Testovanie bez prípravy
Príprava plodí dokonalosť, a to platí v celom prostredí testovania softvéru. V prípade manuálneho testovania to znamená, že popri štúdiu stručného popisu softvéru je potrebné venovať čas aj jeho pochopeniu a vytvoriť testovacie prípady, ktoré budú vhodne napĺňať všetky tieto ciele.
Ak si dáte načas, vaše testovacie prípady budú vyhovovať vašim potrebám ako vývojára a je oveľa pravdepodobnejšie, že nájdete všetky najdôležitejšie chyby v systéme. To tiež pomáha testerom čítať testovacie prípady prehľadnejšie a vykonávať ich s väčšou presnosťou.
5. Ignorovanie svojich inštinktov
Keď spoločnosť začne testovať manuálne, robí tak z niekoľkých dôvodov vrátane toho, že chce mať prispôsobivosť a inštinkt ľudského testera. Pri testovaní softvéru si môžete všimnúť, že sa niečo javí zvláštne napriek tomu, že to nie je aktívne súčasťou testovacieho prípadu, čo vás podnieti k tomu, aby ste nevykonávali žiadne zmeny ani ďalej neskúmali. To je chyba.
Vždy sa oddávajte svojej zvedavosti a počúvajte, čo vám hovorí váš inštinkt, pretože to pomáha nájsť problémy, ktoré automatizovaný testovací prípad nedokáže. Manuálni testeri sú vyberaní pre svoju inteligenciu a odborné znalosti, takže pôsobenie na základe týchto vlastností znamená maximálne využitie potenciálu testu.
6. Strach z chýb
Každý robí chyby, bez ohľadu na to, akú prácu vykonávate. Je však lepšie si to uvedomiť, než sa púšťať do procesu s obavami, že by ste mohli urobiť chybu. To vás ešte viac stresuje a je ešte pravdepodobnejšie, že spôsobí problémy s výkonom testovania. Automatizácia tento problém nemá, pričom manuálni testeri sú náchylnejší na tlak.
K úlohám pristupujte prirodzene a ak urobíte chybu, snažte sa ju čo najskôr napraviť. Testovanie softvéru je fáza, v ktorej sa objavujú a odstraňujú problémy, a príležitostný problém pri testovaní nezničí softvér pre koncového používateľa, pokiaľ ho opravíte.
7. Nevyužívanie prestávok
Manuálne testovanie si vyžaduje vysokú úroveň pozornosti venovanej detailom pri každom teste, čo môže byť pre testera únavné. Napriek tomu sa niektorí testeri a spoločnosti zameriavajú na to, aby testeri pracovali počas celého dňa bez prestávok pre únavu alebo výpadky koncentrácie.
Ide o závažnú chybu. Poskytnite testovacím pracovníkom prestávky počas dňa, pretože sa tým znižuje pravdepodobnosť výskytu problémov a testovanie je čo najpresnejšie. Ak ste sami testerom, snažte sa v spolupráci s riadiacimi pracovníkmi aktívne starať o duševné zdravie svoje aj svojho okolia.
Najlepšie nástroje na manuálne testovanie
Pri manuálnom testovaní nemusíte dokončiť každú časť práce sami. V niektorých prípadoch môže byť použitie nástroja ideálne na riadenie testovania a čo najplynulejší proces. Ak ste tester a premýšľate o tom, ako zlepšiť svoje štandardy, ideálnym začiatkom by mohlo byť preskúmanie nástrojov.
5 najlepších bezplatných nástrojov na manuálne testovanie
Keď začínate s akýmkoľvek novým nástrojom na testovanie softvéru, chcete sa uistiť, že vaša investícia bude mať dobrú hodnotu. To sa týka množstva času, ktorý investujete do softvéru, a sumy peňazí, ktorú vynaložíte na získanie licencie.
S bezplatnými nástrojmi na manuálne testovanie je získanie hodnoty za peniaze oveľa jednoduchšie a netrpíte výčitkami svedomia, ak sa vám to nepodarí.
Medzi najlepšie bezplatné nástroje na manuálne testovanie, ktoré sú k dispozícii pre tímy zabezpečujúce kvalitu, patria:
1. JIRA
JIRA je dokumentačný nástroj na testovanie softvéru, ktorý umožňuje vývojárom vytvárať tikety pre všetky chyby, problémy alebo opravy, ktoré si vyžadujú podporu. Táto platforma obsahuje aj nástroje na určovanie priorít, takže vývojový tím môže pri zlepšovaní svojho programu najprv triediť najdôležitejšie problémy.
2. LoadRunner
Nástroj LoadRunner, ktorý je kompatibilný s celým radom vývojových nástrojov, pomáha pri testovaní výkonnosti v rôznych nastaveniach a generuje údaje z testov výkonnosti v zložitých detailoch. Nástroj tiež pomáha kategorizovať niektoré hlavné príčiny problémov s výkonom pre vývojárov, ktorí chcú zvýšiť efektivitu.
3. SonarQube
Podporuje širokú škálu programovacích jazykov prostredníctvom manuálneho testovania, pričom sleduje merania v priebehu času, aby sa znížilo množstvo správ, ktoré musia manuálni testeri sami vyplniť. Je vysoko prispôsobiteľný a efektívne sa integruje s radom významných aplikácií tretích strán.
4. Trac
Trac je nástroj na správu projektov vyvinutý v jazyku Python, ktorý vám poskytuje históriu zobrazení, kód a všetky zmeny, takže vidíte zmeny vykonané medzi testami. Ladenie cez Trac využíva aj systém správy tiketov, čo zjednodušuje proces vyhľadávania problému a jeho opravy pre používateľa.
5. NUnit
NUnit je kompletne open-source nástroj založený na JUnit, ktorý podporuje dátovo orientované testy a efektívne sa integruje s rôznymi platformami. Ku kvantitatívnym údajom máte prístup aj po dokončení manuálnych testov, čo vývojárom poskytuje lepší prehľad o prípadných problémoch.
5 najlepších bezplatných nástrojov na testovanie automatizácie
Hoci manuálne testovanie má množstvo výhod,implementácia automatizácie do testovacích procesov je niekedy ideálnou cestou vpred.
To vám pomôže odstrániť niektoré nevýhody výlučne manuálneho testovania a zároveň získať dobrý prehľad o softvéri. Automatizácia si na začiatok vyžaduje určité nástroje a mnohí vývojári uprednostňujú používanie bezplatných nástrojov, keď začínajú pracovať a osvojujú si platformu.
Medzi najlepšie dostupné bezplatné nástroje na automatické testovanie patria:
1. ZAPTEST FREE EDITION
ZAPTEST Free Edition je navrhnutý tak, aby pomohol testerom integrovať automatizáciu do ich práce, pričom sa zameriava na to, aby bol multiplatformný a aby používatelia implementovali automatizáciu spôsobom, ktorý správne podporuje manuálne testovanie. Kľúčovou výhodou je automatizácia ľubovoľnej úlohy, pričom všetky aspekty softvéru možno automatizovať prostredníctvom bezplatnej verzie ZAPTEST.
2. Appium
Ide o open-source framework na automatizáciu testovania, ktorý sa zameriava najmä na automatizáciu mobilných zariadení pre aplikácie, ktoré pracujú vo webových obchodoch. Appium pracuje s rôznymi rozhraniami API a operačnými systémami vrátane systémov iOS, Windows, Mobile, Web a Android.
3. Platforma Katalon
Katalon je bezkódové riešenie, ktoré pomáha testerom bez skúseností s kódovaním dosiahnuť lepšiu automatizovanú testovaciu prácu. Táto platforma má obchod s celým radom rozšírení, ale to znamená, že na to, aby ste testovací softvér využili naplno, budete pravdepodobne musieť venovať veľa času a prípadne aj peňazí na jeho prispôsobenie vašim potrebám.
4. Robotium
Nástroj s otvoreným zdrojovým kódom, ktorý sa zameriava špeciálne na testovanie systému Android a zároveň umožňuje používateľskú akceptáciu a testovanie šedej skrinky. Hoci táto aplikácia funguje na vysokej úrovni, pre používateľov existujú určité riziká, pretože multiplatformové aplikácie by si stále vyžadovali testovanie na všetkých ostatných platformách.
5. Loadster
Loadster je nástroj určený na pomoc spoločnostiam, ktoré pracujú s aplikáciami s veľkou používateľskou základňou. Používanie tohto nástroja pomáha vývojárom pripraviť sa na väčšie špičky v prevádzke a dosiahnuť optimálny výkon aj pri značnom zaťažení serverov spoločnosti. Okrem pomoci pri manuálnom testovaní môže Loadster automatizovať niektoré úlohy testera, ako je napríklad testovanie záťaže.
Záver
Na záver možno povedať, že manuálne testovanie je prínosom pre každú organizáciu. Testeri môžu odhaliť inak neviditeľné problémy a poskytnúť podrobnú spätnú väzbu o aplikácii, ktorú automatizácia jednoducho nedokáže.
Hoci manuálne testovanie má aj svoje nevýhody, inteligentné spoločnosti čoraz častejšie využívajú hybridný systém manuálnych a automatizovaných testov, ktorý pomáha zohľadniť nedostatky oboch systémov a zároveň využiť výhody oboch.
Manuálne testovanie je základom lepšieho vývoja softvéru a jeho správne používanie môže výrazne ovplyvniť vaše výsledky.
Často kladené otázky a zdroje
Manuálne testovanie môže byť komplikovaná téma, takže je pochopiteľné, že môžete mať ďalšie otázky o jeho fungovaní. Pozrite si niekoľko často kladených otázok o manuálnom testovaní s niektorými zdrojmi, ktoré môžete využiť, keď sa časom naučíte byť lepším manuálnym testerom.
1. Najlepšie kurzy o automatizácii manuálneho testovania
– „Základy automatizácie testovania“ – Udemy
– „Školenia na automatizáciu testovania“ – NobleProg
– „Školenie manuálneho testovania – Spojené kráľovstvo“ – The Knowledge Academy
– „Manuálne a automatické testovanie“ – IT Talent Hub
2. Akých je 5 najčastejších otázok na pohovore o manuálnom testovaní?
– „Máte skúsenosti s manuálnym testovaním?“ – Zisťuje, či má uchádzač veľa skúseností s prácou v testovacom prostredí.
– „Aký je rozdiel medzi manuálnym testovaním a automatizáciou testovania?“ – Zisťuje, či má uchádzač základné technické znalosti o procesoch testovania.
– „Ako ste prekonali výzvy v prostredí testovania softvéru?“ – Posudzuje schopnosti uchádzača riešiť problémy v oblasti manuálneho testovania.
– „Aký je ideálny nástroj na podporu manuálneho testovania?“ – Vytvorí lepšiu predstavu o pracovných postupoch, ktoré uchádzač používa, a o tom, či to vyhovuje spoločnosti.
– „Pracuje sa vám dobre v tíme?“ – Informujte vedúceho pohovoru, či je uchádzač schopný pracovať vo väčšej skupine.
3. Najlepšie návody na manuálne testovanie na Youtube
– „Manuálne testovanie (celý kurz)“ – SDET- QA Automation Techie
– „SOFTWARE TESTING TUTORIAL – Master testovanie softvéru a Crack Job v testovaní“ – Testovanie softvéru Mentor
– „Čo je manuálne testovanie? | Manuálne testovanie pre začiatočníkov | Edureka“ – edureka!
– „Koncepty manuálneho testovania (funkčného)“ – Naveen AutomationLabs
– „Výučba manuálneho testovania“ – Akadémia testovania softvéru
4. Ako udržiavať manuálne testy?
Existuje niekoľko vecí, ktoré môžete urobiť na udržanie manuálnych testov, z ktorých prvou je starostlivosť o testerov. Tým, že do centra testovacích procesov postavíte welfare, zabezpečíte, že všetci budú v stave, ktorý im umožní venovať pozornosť a podať maximálny výkon.
Okrem toho sa zamerajte na dobré podporné štruktúry. To znamená dohľad zo strany manažérov, ktorí zabezpečia, aby testovanie bolo konzistentné a prinášalo presné výstupy všade, kde je to možné.
Neexistuje žiadna prísna mechanická alebo automatizovaná údržba ako taká, ale starostlivosť o ľudí je sama o sebe formou údržby vášho testovania.