Průzkumné testování je specifický typ testování softwaru, který má pro aplikaci mnoho výhod a umožňuje jí plně využít její potenciál.
Způsob, jakým tým začlení průzkumné testování do svých rutinních kontrol, může dokonce rozhodnout o tom, jak dobře bude software fungovat, zejména proto, že se tak k testovacím postupům přistupuje novými a nečekanými způsoby. To pomáhá testerům odhalit problémy v aplikaci, které by jinak mohly zůstat nepovšimnuty až do spuštění a způsobit nefunkčnost klíčových funkcí.
Pochopení procesů, typů a přístupů průzkumného testování vám může pomoci nasměrovat organizaci a její testovací týmy k tomu, jak je začlenit do obvyklých kontrol.
Existuje také řada bezplatných nástrojů, které může tým používat k usnadnění těchto kontrol a k odhalení problémů dříve, než se mohou stát překážkou vývoje.
V této příručce představujeme výhody průzkumného testování spolu s klíčovými aspekty, které by měl tým před implementací zvážit.
Co je průzkumné testování?
Průzkumné testování kombinuje fázi návrhu a provedení testu, což testerům zajišťuje naprostou volnost při práci a umožňuje jim průběžně zefektivňovat svou práci.
Při kontrole softwaru tyto týmy pravděpodobně objeví nové komponenty, které vyžadují důkladnou kontrolu, a mohou snadno přijít s novými testy, které by aplikaci prospěly.
Průzkumné testování je podobné testování ad hoc, ale řídí se mnohem přísnější dokumentací a zahrnuje také aktivnější proces učení.
Méně strukturovaný přístup pomáhá testerům zjistit, jak bude aplikace pravděpodobně reagovat na reálné scénáře a testovací případy, a slouží jako důležitý doplněk skriptovaného testování.
Kvalita průzkumného testování týmu často závisí na dovednostech jednotlivých testerů, protože kontroly vyžadují kreativitu a důkladné porozumění softwaru. Jedná se o proces neustálého objevování, při kterém testeři používají deduktivní uvažování jako vodítko pro celkovou techniku.
Průzkumné testování je užitečné zejména proto, že odráží, jak by uživatelé mohli software používat. Většina uživatelů najde chyby a problémy náhodou, takže tyto neskriptované procesy mohou testerům pomoci najít problémy, které by předem stanovené kontroly neodhalily.
Tým může tento postup také automatizovat, aby zajistil vyšší úroveň efektivity.
1. Kdy je třeba provést průzkumné testování?
Průzkumné testování je obecně užitečné téměř v každém procesu testování softwaru, vyniká však zejména při poskytování rychlé zpětné vazby o aplikaci.
Tým může tyto kontroly začlenit také v případě, že mu dojdou skriptované testy. Bez jasného směru kontroly softwaru může průzkumné testování pomoci odhalit problémy, které se vymykají standardním kontrolám.
Zajištění různorodých testovacích postupů umožňuje testerům pochopit tento software na mnohem hlubší úrovni v jakékoli fázi, ale jejich včasné provedení může přinést více výhod.
Týmy mohou v případě potřeby později provést průzkumné testy znovu, aby měly větší klid.
2. Kdy nepotřebujete provádět průzkumné testování
Existuje několik scénářů, kdy průzkumné testování nepřináší žádné výhody, ačkoli pro testery může být užitečnější počkat, dokud software nebude mít svou základní funkčnost.
Funkce aplikace se obvykle vzájemně prolínají nebo ovlivňují, což znamená, že průzkumné testy jedné funkce mohou být zastaralé, jakmile vývojový tým přidá do tohoto softwaru další funkce.
Tyto testy je také možné bez problémů provádět společně se skriptovanými kontrolami za předpokladu, že testeři mohou zajistit důkladnou dokumentaci, aby nedošlo k záměně.
Průzkumné testování je v porovnání s jinými typy testování velmi univerzální, a proto jsou tyto kontroly velmi dobře použitelné.
3. Kdo se podílí na průzkumném testování?
Na průzkumném testování se v určitém ohledu podílí mnoho pracovníků, včetně:
– Tyto testy mohou provádět testeři softwaru s jakoukoli úrovní dovedností, avšak členové týmu, kteří lépe rozumí softwaru, mohou navrhnout větší množství různých kontrol.
Zkušenosti mohou také ovlivnit jejich schopnost určit nejužitečnější testy.
– Vývojáři softwaru, kteří uznávají výsledky těchto testů, přijmou případné návrhy a často vyvinou vlastní řešení problému.
Jejich odezva na testy umožňuje, aby aplikace dosáhla stavu vhodného pro úspěšné uvolnění.
– Projektoví manažeři, kteří na celý tento proces dohlížejí a kteří mohou dokonce rozhodovat o tom, které typy testování týmy použijí.
Mohou být také zodpovědní za nákup softwaru pro týmy, který může zefektivnit nebo dokonce automatizovat testy.
Životní cyklus průzkumného testování
Proces průzkumného testování je silně zaměřen na svobodu testera, ale přesto má určitou strukturu.
Hlavní tři fáze tohoto přístupu jsou:
Fáze 1: Učení
Testeři začínají tím, že dobře porozumí softwaru a jeho funkcím – kriticky je analyzují a zjišťují, jak do sebe zapadají.
To umožňuje testerovi zjistit obvyklé vstupy, které by uživatel mohl provést, ačkoli již může znát aplikaci a její fungování.
Fáze učení může vyžadovat i výukový program pro ovládání softwaru. Jedná se o fázi zkoumání, která testera vybaví všemi informacemi potřebnými k tomu, aby mohl navrhnout rozsáhlou škálu užitečných testů.
Fáze 2: Návrh testu
Návrh průzkumných testů sice zahrnuje různá pravidla a parametry, ale ve srovnání se skriptovaným testováním, jehož specifika jsou známa ještě před zahájením testování, nabízí podstatně větší volnost.
Tester může navrhnout kontroly, které podle něj přesněji odpovídají aplikaci, a může tak pro vývojový tým odhalit cenné údaje, včetně významných chyb, které by měl opravit.
Testovací týmy v této fázi zjišťují, jaký přístup zvolit a jak rozdělit práci mezi jednotlivé testery tak, aby byly využity jejich silné stránky.
Fáze 3: Realizace
Po navržení kontrol, které mají být použity, mohou nyní testeři kontrolovat aplikaci způsoby, které považují za nejefektivnější – mohou je provádět ihned po navržení konkrétního testu.
V této fázi testeři aktivně hledají problémy a způsob, jakým by se odhalené problémy mohly promítnout do dalších funkcí a vlastností.
Přestože je do provádění průzkumných testů zapojena určitá míra intuitivní práce, stále se řídí stanovenými postupy a cíli, což umožňuje plynulé testování, které se může snadno přizpůsobit konkrétním cílům testování.
Průzkumné vs. skriptované testování
Průzkumné testování je vlastně opakem skriptovaného testování, ačkoli obojí může být důležité pro zajištění připravenosti aplikace k vydání. Ta je obvykle formálnější a strukturovanější a zahrnuje mnoho rozsáhlých testů ve srovnání s průzkumnými kontrolami, které jsou často specifičtější pro funkčnost aplikace.
Součástí toho je i to, že průzkumné testování je výrazně přizpůsobivější, zatímco skriptované testy mohou mít problémy, pokud dojde k velkým změnám v softwaru. Průzkumné testy mohou odhalit chyby a rychleji proti nim zasáhnout, což je užitečné zejména v případech, kdy je důležitá rychlá zpětná vazba.
1. Aktivní průzkumné testování
Aktivní průzkumné testování spočívá v tom, že tester navrhne automatický skript pro své kontroly, který jiný tester provede. Tyto skripty případně zohledňují předchozí testy.
Oba testeři si obvykle v průběhu kontroly vymění role, aby dvakrát zkontrolovali spolehlivost těchto skriptů a procesů.
Aktivní testy mají širší pokrytí, aniž by byla obětována specifičnost průzkumných kontrol. Tyto skripty také umožňují lepší dokumentaci, což usnadňuje reprodukci problémů, které testeři naleznou.
Dokumentace je nezbytnou součástí aktivních testů, protože pomáhá zúčastněným stranám sledovat celkový průběh aplikace.
2. Pasivní průzkumné testování
Pasivní průzkumné testování vyžaduje pouze jednoho testera, i když práce ve dvojici může proces ještě více zefektivnit.
Tento přístup zahrnuje specifický software, který zaznamenává činnosti testerů a poskytuje jim snadné kroky k replikaci jakéhokoli odhaleného problému. Obvykle se jedná o video s komentářem testera, který krok za krokem vysvětluje své kroky.
Záznam procesu testování také umožňuje získat přehled o výkonu aplikace, včetně rychlosti reakce na vstupní požadavky.
Pasivní testování poskytuje testerům i vývojovému týmu množství podrobných informací o fungování softwaru.
Techniky průzkumného testování
Průzkumné testování obvykle probíhá formou „prohlídky“, kdy tester prozkoumává software co nejefektivnějším způsobem.
Tým si může vybrat z různých prohlídek, včetně:
– Prohlídky s průvodcem
Tento přístup upřednostňuje zvýrazněné funkce aplikace, čímž věrně kopíruje způsob, jakým se softwarem pracuje běžný uživatel, a odhaluje problémy, které by přirozeně našel.
– Prohlídky historie
Tato prohlídka zkontroluje nejstarší funkce aplikace a ujistí se, že jsou stále funkční; to je důležité zejména v případě, že vývojáři přidali nové funkce, které jsou s nimi v rozporu.
– Money tour
Tento průzkumný test prověřuje kritické funkce aplikace, konkrétně ty, za jejichž přístup zákazníci a klienti platí peníze – ty mají pro testovací tým obvykle nejvyšší prioritu.
– Prohlídka kriminality
Testeři někdy aktivně pracují na rozbití aplikace nebo na vyvolání negativních scénářů, například zadávají neplatné informace a zkoumají, jak na ně aplikace reaguje.
– Prohlídka zadní uličky
Tento proces zahrnuje funkce, které pravděpodobně využije méně zákazníků; ty jsou stejně důležité pro jakýkoli testovací přístup, zejména proto, že budou interagovat s dalšími funkcemi.
– Intelektuální prohlídka
Tato prohlídka posouvá aplikaci dále a testuje nejsložitější funkce s vyššími (někdy maximálními) hodnotami, aby se zjistila rychlost zpracování softwaru.
Přístupy průzkumného testování
Existují dva hlavní přístupy k průzkumnému testování:
1. Průzkumné testování založené na relacích
Jedná se o časovou techniku, jejímž cílem je kvantifikovat proces testování rozdělením na „relace“ se dvěma složkami: misemi a kartami.
Mise je účelem a dobou trvání dané relace, která poskytuje průzkumnému testerovi jasné zaměření.
Charta stanovuje rozsah každé relace a podrobně popisuje všechny konkrétní cíle, které chce tester splnit. Výsledkem je vyšší úroveň odpovědnosti (a dokumentace) díky rozdělení těchto kontrol na lépe zvládnutelné součásti.
Testy založené na relacích také zvyšují produktivitu a poskytují testerům jasné metriky a informace o řešení problémů.
2. Párové průzkumné testování
Párové testování je podobné aktivnímu průzkumnému testování, protože zahrnuje především práci ve dvojicích – obvykle na stejném zařízení – za účelem průběžné současné kontroly aplikace. Při tomto uspořádání jeden tester navrhuje řadu testovacích případů a vede si poznámky o průběhu, zatímco druhý testuje software.
Při párovém testování je zásadní komunikace, protože díky ní jsou oba testeři obeznámeni s kontrolami a jejich účelem.
Pokud tyto dvojice přiřazujete sami, dbejte na to, abyste zohlednili silné a slabé stránky každého testera, protože to vám umožní vytvořit silnější procesy průzkumného testování.
Které faktory ovlivňují průzkumné testování?
Mezi faktory, které mohou ovlivnit kvalitu průzkumného testování týmu, patří:
– Hlavní cíl a základní funkce softwaru.
– Konkrétní cíle testování v současné fázi aplikace.
– Individuální role a schopnosti jednotlivých testerů v týmu.
– Dostupné nástroje, například bezplatný software pro automatizaci testů.
– Podpora, které se testerům dostává od kolegů nebo vedení.
– Požadavky klienta a aktuální široké trendy na trhu.
– Snadné používání aplikace, například plynulost rozhraní.
– Čas, který mají testeři na dokončení testovací fáze.
– Vstupy a další různá data, která testeři hodlají použít.
– Funkce, které vývojáři postupem času do softwaru přidávají.
Typy průzkumného testování
Tři hlavní typy průzkumného testování, které může tým použít, jsou:
1. Průzkumné testování ve volném stylu
Volný styl testování zahrnuje ad hoc přístup ke kontrole aplikace. Tato metoda má jen málo pravidel, takže její účinnost se může lišit; některé softwary a komponenty vyžadují robustnější metodiku.
Tyto kontroly by přesto mohly být přínosné, protože by pomohly testerům seznámit se s touto aplikací a potvrdit práci předchozího testera.
I bez přísných pravidel mohou zkušení a zkušení testeři snadno využít formátování ve svůj prospěch. Mohou snadno procházet všemi aspekty softwaru – v některých situacích jsou pravidla testování omezující a mohou neúmyslně omezit výsledky týmu.
2. Průzkumné testování založené na scénáři
Testování založené na scénářích využívá jako základ každého testu reálné situace, například kontrolu vstupů, které uživatelé pravděpodobně provedou během typického provozu tohoto softwaru.
Testeři tvrdě pracují na tom, aby každý scénář, který vymyslí, odpovídal tomu, jak uživatel s aplikací pracuje.
Čas může být omezením, protože cílem týmu je otestovat co nejvíce scénářů; v závislosti na termínech, které jsou před námi, pravděpodobně nebude možné pokrýt všechny možnosti.
Testeři by měli používat širokou škálu testů v různých kategoriích.
3. Průzkumné testování založené na strategii
Testování založené na strategii zahrnuje širokou škálu specifických metod, včetně testování hraničních hodnot, technik ekvivalence, technik založených na riziku a dalších. To obecně upřednostňuje testery, kteří jsou s aplikací již obeznámeni, protože mohou vyvinout na míru šité strategie, které tyto jednotlivé metody zahrnují.
Přístup založený na strategii se zaměřuje především na funkčnost softwaru (a jeho vnitřní fungování), aniž by se zabýval možnými scénáři, které by mohly vést uživatele k problémům, které se objevují. To by mohlo vést k širší analýze aplikace a jejích různých funkcí, potenciálně do větší hloubky než různé jiné přístupy.
Manuální nebo automatizované průzkumné testy?
Testovací týmy mohou provádět průzkumné kontroly buď ručně, nebo je mohou automatizovat. Obě možnosti mohou přinést obrovské výhody; správná volba často závisí na specifikách projektu.
Manuální průzkumné testování
Manuální průzkumné testování umožňuje větší rozsah kontrol na míru. Ačkoli to může trvat déle, protože lidští testeři jsou pomalejší než počítače, ruční kontrola může být užitečná při určování uživatelské zkušenosti.
Tester se snaží nejen zajistit, aby všechny funkce aplikace fungovaly tak, jak mají, ale také zjistit, zda ji uživatelé mohou snadno ovládat. Jedná se pravděpodobně o nejběžnější formu průzkumného testování, což však neznamená, že je nutně nejefektivnější.
1. Výhody ručního provádění průzkumných testů
Mezi výhody manuálního průzkumného testování patří:
Větší důraz na použitelnost
Automatizované průzkumné testy si mohou všimnout nesrovnalostí v softwaru, ale nemusí být schopny tyto problémy interpretovat stejným způsobem jako lidský tester.
To zahrnuje pochopení toho, jak se uživatelé softwaru pravděpodobně budou pohybovat nebo jak budou s aplikací pracovat, což automatizace nemůže zohlednit.
Manuální průzkumní testeři mohou nabídnout větší úroveň zpětné vazby, včetně konkrétních podrobností o tom, jak nalezené problémy ovlivňují celkový software nebo celkové prostředí.
Možnost provádět změny v reálném čase
Jednou z klíčových výhod průzkumného testování je, že je možné identifikovat potřebu testu a provést jej relativně rychle před aukcí potřebných vylepšení.
Automatizované testování je obecně mnohem rychlejší proces, ale testeři musí počkat, až bude vše dokončeno, a teprve poté provést změny – manuální testeři to mohou udělat ještě v průběhu průzkumného testování.
To je však často možné pouze u chyb, které mají dopad na menší části softwaru.
Větší pozornost věnovaná detailům
Průzkumné testování spočívá především v objevování nových způsobů testování aplikace a zároveň v jejím pochopení; to někdy může znamenat, že jeden test vede k dalšímu, protože tester dostane nápady.
Automatizované testy to nemusí zohlednit, protože testovací tým má relativně volné ruce. Manuální testeři se neustále zdokonalují ve znalostech softwaru a vymýšlejí nové, ale stejně důležité testy – to však může být obtížné, pokud je automatizuje software třetích stran.
Umí najít chyby mimo kód
Manuální průzkumné kontroly umožňují testerům prozkoumat všechny aspekty aplikace a softwaru, a to i mimo samotný kód.
Mnoho automatizovaných přístupů se omezuje na kód a jeho fungování, což může vést k tomu, že si testovací týmy nevšimnou problémů, které se mohou objevit v jiných částech aplikace.
To závisí především na použitém automatizačním softwaru, protože některá řešení mohou nabízet širší přístup k průzkumnému testování.
Zajišťuje kvalitu v rámci celého projektu
Automatizované průzkumné kontroly hledají v aplikaci pouze chyby a metriky; manuální testeři by místo toho mohli software zkontrolovat a poskytnout vlastní komplexní zpětnou vazbu.
Mohou například otestovat kód a zjistit, že je příliš složitý – což je důležité zejména proto, že mrtvý kód může zpomalovat výkon, ale automatizované procesy by ho efektivně neodhalily.
Znalosti testera o softwaru mohou být nápomocné při diagnostice problémů, které se objeví během dalších fází testování.
2. Úskalí manuálního průzkumného testování
Mezi problémy manuálního průzkumného testování patří:
Možnost lidských chyb
Automatizované průzkumné testování může provádět přesně stejnou kontrolu tolikrát, kolikrát je třeba, aniž by se změnil přesný průběh, což zajišťuje konzistenci a spolehlivé výsledky.
Manuální průzkumné testování je náchylné na lidské chyby, což znamená, že tester může zadat špatnou hodnotu. Obvykle je možné tyto testy překontrolovat a opravit případné nesrovnalosti, protože se mohou zdát zřejmé i na první pohled.
Opakování testu po zjištění chyby však může zabrat více času.
Obecně časově náročnější
I když testeři provedou každou průzkumnou kontrolu správně a bez lidských chyb, zabere tento celkový proces ve srovnání s automatizovaným softwarem, který dokáže testy vypočítat mnohem rychleji, značné množství času.
To by mohl být rozdíl minimálně několika hodin; čas, který by testeři mohli strávit na částech aplikace, které by z automatizace neměly žádný užitek.
Průzkumné testy také vyžadují neustálý dohled, zatímco automatizace umožňuje spouštět testy přes noc.
Zdlouhavý proces dokumentace
Stejně tak by ruční dokumentace v průběhu a po ukončení ručního testování mohla zbytečně zatěžovat proces průzkumného testování.
To ztěžuje sledování změn a úprav softwaru v průběhu času – automatizovaný software je obvykle schopen tuto skutečnost intuitivně zohlednit při provádění testů.
Jedná se o další administrativní záležitost, která ubírá čas a energii jiným záležitostem, což fakticky snižuje rozsah a šíři celkového postupu testování softwaru.
Musí znát software do hloubky
Manuální testeři s jakoukoli úrovní dovedností mohou aplikaci zkontrolovat a důkladně otestovat. Důvodem je práce, kterou věnují pochopení softwaru – první fáze průzkumného procesu.
Pokud se však tester snaží nebo zanedbává naučit, jak tato aplikace funguje, bude mít pravděpodobně problémy s navržením a provedením vhodného rozsahu testů.
Dobrá znalost softwaru umožňuje testerům jít nad rámec obvyklých testovacích parametrů.
Nákladná údržba
Spoléhání se na manuální průzkumné testování obvykle vyžaduje větší testovací tým, což může mít za následek vyšší dlouhodobé náklady ve srovnání s automatizovanými kontrolami. Software třetích stran, který tyto průzkumné testy provádí, může mít obrovskou hodnotu nebo může být dokonce zcela zdarma.
V závislosti na složitosti úkolů může společnost potřebovat vysoce kvalifikované testery s dlouholetými zkušenostmi, aby mohli aplikaci plně zkontrolovat. To může výrazně zvýšit náklady na testování ve srovnání s použitím bezplatného automatizačního softwaru.
3. Kdy použít manuální průzkumné testování
Manuální průzkumné testování se často potýká s několika problémy, ale přesto je důležitou součástí důkladného testování softwaru. Důvodem je skutečnost, že existují aspekty softwaru, které automatizace nemůže plně zohlednit a na které je třeba se také důkladně zaměřit.
Software například nemůže spolehlivě poskytovat zpětnou vazbu o uživatelských rozhraních nebo testech uživatelské zkušenosti. Dobrou představu o tom, jak aplikace funguje v praxi, mohou testeři získat pouze tehdy, pokud ji otestují ručně. To znamená, že vývojáři i testovací týmy musí zvážit začlenění alespoň určité míry manuálního průzkumného testování do svých kontrol.
Automatizované průzkumné testování
Automatizované testování využívá software třetích stran k automatizaci určitých kontrol – testeři si jej obvykle mohou přizpůsobit tak, aby vyhovoval prakticky jakémukoli testu.
To však zpravidla vyžaduje, aby tým alespoň jednou provedl kontrolu ručně a zkalibroval automatizaci. To může výrazně zefektivnit proces pro testovací i vývojové týmy.
Přestože automatizace průzkumných testů může být neobvyklá, má pro vaši aplikaci a její výkonnost několik jasných výhod.
1. Výhody automatizace průzkumných testů
Mezi hlavní výhody automatizace průzkumných testů patří:
Důsledné provádění testů
Lidská chyba může snadno vést k chybám v testování, jejichž náprava zabere čas i peníze; automatizované průzkumné kontroly umožňují testovacím týmům tento problém obejít.
Testeři efektivně učí automatizační software, jak správně provést test, a zajišťují, aby jej pokaždé provedl stejně. To zvyšuje celkovou spolehlivost testů a zkracuje dobu, kterou vývojáři stráví čekáním na výsledky – zejména proto, že testeři mohou snadno nastavit jejich spuštění přes noc.
Šetří čas všem
Automatizované testy umožňují vývojářům mnohem rychleji začít pracovat na opravách problémů a zároveň testerům pokrýt širší rozsah průzkumných kontrol. Tým může zohlednit jen tolik scénářů, kolik je potřeba k jejich provedení, a proto je důležité, aby testeři vešli co nejvíce kontrol do povoleného časového rámce.
Automatizace pomáhá tím, že tyto průzkumné testy provádí mnohem rychleji než manuální testeři.
Nákladově efektivní přístup
V závislosti na softwaru, který si tým vybere, může být automatizace mnohem úspornější než manuální testování – může být dokonce zdarma.
I když je stále nutné zaměstnávat manuální testery a někteří z nich budou zodpovědní za kalibraci automatizačních postupů, automatizace co největšího počtu průzkumných testů dává společnosti šanci snížit náklady na zaměstnance.
Jakmile tým porozumí automatizačnímu softwaru, může jej přizpůsobit širokému spektru úloh.
Přizpůsobení pro více zařízení
Manuální testování může vyžadovat pracovníky se zkušenostmi s různými zařízeními, například se znalostí různých operačních systémů telefonů včetně Androidu a iOS, pokud se jedná o mobilní aplikaci.
Automatizovaný software to dokáže zohlednit a testovat na více zařízeních, aby bylo zajištěno, že aplikace bude fungovat konzistentně. Testovací týmy se znalostí těchto zařízení mohou tento proces považovat za zdlouhavý; automatizace opět dokáže zefektivnit obvyklé procesy průzkumného testování a testovat každou iteraci současně.
Opakovaně použitelné skripty
Pokud tým testuje několik verzí stejného softwaru nebo dokonce více produktů s podobnou architekturou nebo funkcemi, je možné skripty opakovaně používat od jednoho testovacího cyklu k druhému.
Pokud jsou nutné nějaké úpravy pro zajištění kompatibility, mohou je ruční testeři provést mnohem rychleji než psaní zcela nového skriptu.
Automatizace optimalizuje prakticky každou fázi procesu průzkumného testování a lze ji snadno nastavit v různých konfiguracích softwaru.
2. Výzvy automatizace průzkumných testů
Tento proces zahrnuje také různé výzvy, jako např.:
Představuje pouze jednu stranu testování
Není praktické ani rozumné automatizovat každou kontrolu při testování aplikace, protože existují aspekty, ke kterým může spolehlivě poskytnout zpětnou vazbu pouze manuální tester.
To se týká i uživatelského prostředí, ačkoli v závislosti na zvoleném softwaru je možné získat důkladnou analýzu výkonu a testování zátěže pomocí automatizace.
Automatizace průzkumných testů postrádá lidský úsudek a pro některé kontroly může nejlépe fungovat společně s manuálním testerem.
Nerealistická očekávání ohledně schopností
Podobně mohou automatizované postupy průzkumného testování přinést obrovské výhody pro aplikaci i pro celý projekt.
Tento přístup však není vždy řešením. Organizace, které se v každé fázi ve velké míře spoléhají na automatizaci, mohou mít neúplný pohled na software.
Automatizace identifikuje problémy, ale za jejich odstranění jsou zodpovědné týmy testování a vývoje. Je důležité definovat zastřešující strategii automatizace, aby všichni účastníci projektu rozuměli jejím možnostem a omezením.
Vyšší požadavky na dovednosti
Automatizace obvykle zahrnuje znalost toho, jak provádět složité kontroly, a také to, jak je naprogramovat a skutečně automatizovat. To často vyžaduje dlouholeté zkušenosti se skriptováním, ačkoli automatizační software by mohl pomoci tyto procesy výrazně optimalizovat.
Je velmi důležité, aby společnost najímala testery s různorodými a robustními dovednostmi, které usnadní efektivní automatizaci.
Testeři, kteří mají zkušenosti s automatizací, také vědí, jaké funkce je třeba upřednostnit při výběru z dostupných možností softwaru třetích stran, aby tým získal dobrý produkt.
Nesprávné strategie a komunikace
Pro úspěšnou automatizaci je nejdůležitější komunikovat ucelenou strategii; vývojáři, testeři a dokonce i projektoví manažeři musí být v průběhu testování na stejné vlně.
Týmy musí spolupracovat, aby určily rozsah a harmonogram svých nadcházejících postupů. To platí pro jakýkoli proces testování, ale je to obzvláště důležité vzhledem k další složitosti automatizace. Lepší komunikace a absence informačních sil umožní vašim týmům provádět testy efektivněji.
Výběr správného softwaru pro automatizaci
Automatizace obvykle zahrnuje výběr aplikace třetí strany, která je kompatibilní s cíli testování týmu. Každá možnost má jiné cenové plány a funkce. To může představovat značné dlouhodobé náklady, a to i v případě, že software úspěšně provádí automatizované testy a zároveň poskytuje značnou hodnotu.
Existuje řada bezplatných možností, které nabízejí působivé funkce srovnatelné s prémiovými alternativami. Je důležité, aby testovací tým prozkoumal všechny dostupné možnosti, včetně bezplatného softwaru.
Závěr: Automatizace průzkumného testování vs. manuální průzkumné testování
Existuje jen málo projektů, u kterých by bylo výhodné buď plně manuální, nebo plně automatizované testování, protože aplikace všeho druhu fungují lépe při kombinaci obou způsobů testování.
Automatizované testy sice mohou optimalizovat proces pro vývojové týmy a týmy zajišťující kvalitu, ale některé aspekty návrhu vyžadují manuální průzkumné testování; to je jediný způsob, jak získat zpětnou vazbu od uživatelů.
Postupem času se stále více organizací snaží o zavedení hyperautomatizace, což je proces, jehož cílem je inteligentní maximalizace automatizace, která zajistí, že podnik bude mít efektivní strategii – ta může stále existovat vedle manuálního testování.
Automatizované testování se stává pro firmy dostupnější díky většímu rozšíření automatizačního softwaru, zejména díky několika bezplatným možnostem s množstvím funkcí. To firmám usnadňuje použití kombinovaného přístupu k manuálnímu/automatickému průzkumnému testování.
Svůj podíl na tom má i rostoucí obliba agilního přístupu (technika řízení projektů, která se zaměřuje na postupný, ale významný pokrok) ve vývoji, který vyžaduje krátké testovací cykly. Kombinovaná strategie testování by mohla vyhovovat této a různým dalším vývojovým strategiím, jako je například kontinuální integrace, která podobně vyžaduje opakované testování pro zajištění úspěchu v mnoha iteracích téhož softwaru.
Co potřebujete k zahájení průzkumného testování
Předpoklady průzkumného testování jsou:
1. Jasné cíle testování
Ačkoli je průzkumné testování synonymem volnosti a někdy se zaměňuje s ad hoc testováním, stále se řídí konkrétními pravidly nebo definovatelnými cíli. Jediným způsobem, jak může tým QA úspěšně projít téměř jakoukoli testovací strukturou, je znát očekávaný výsledek každého testu, zejména proto, že testeři obvykle navrhují tyto kontroly sami.
2. Kreativní, intuitivní testeři
Průzkumné testování se zaměřuje na navrhování nových a kreativních testů, které mohou odhalit problémy s aplikací. To zvládnou i testeři s omezenými zkušenostmi za předpokladu, že softwaru rozumí.
Je důležité, aby testeři rozuměli aplikaci a jejímu fungování, což jim umožní intuitivně vyvinout řadu užitečných kontrol.
3. Soudržná dokumentace
Každý typ testování musí mít důkladnou dokumentaci, aby bylo zajištěno, že každý člen týmu dodrží očekávaný harmonogram testování a že nikdo omylem neopakuje kontrolu.
Jedná se o důležitý aspekt komunikace v rámci jednoho oddělení i několika oddělení, například vývojáři vyžadují pravidelné aktualizace testů, aby zjistili, jak opravit problémy.
4. Pohled zákazníka
Průzkumné testování zahrnuje mnoho strategií a scénářů, včetně těch, které odrážejí způsob, jakým budou uživatelé s aplikací prakticky pracovat. Je důležité, aby testovací týmy při kontrolách braly tuto skutečnost v úvahu, i když neprovádějí testy založené na scénářích.
Osvojení si tohoto přístupu umožňuje testerům přistupovat k testování z různých úhlů pohledu, což zvyšuje kvalitu těchto kontrol.
5. Automatizovaný testovací software
Vzhledem k tomu, že tým může pravděpodobně automatizovat značnou část testů, které navrhne, je důležité, aby si mohl pořídit kvalitní software pro automatizované testování před fází provádění.
Vývojáři a testovací tým mohou na základě svých znalostí projektu určit aplikaci třetí strany, která by vyhovovala jejich vlastním požadavkům.
Proces průzkumného testování
Konkrétní kroky průzkumného testování jsou následující:
1. Klasifikujte postup testování
Prvním krokem průzkumného testování je, aby příslušní členové týmu pochopili, jak mohou k těmto kontrolám přistupovat, například klasifikací běžných chyb a provedením analýzy jejich příčin.
Zde testeři sami vypracovávají své představy o testech; v závislosti na přesné metodice mohou také navrhnout testovací listinu.
Tím se stanoví rozsah a testy pro danou relaci nebo pracovní den.
2. Zahájení testů
Přestože přesné parametry (např. čas pro jednotlivé testy nebo celkové sezení) závisí na preferencích týmu a požadavcích projektu, všechny průzkumné testy mají určité společné rysy.
Po klasifikaci příslušných kontrol začnou pracovníci kontroly kvality provádět testy a zaznamenávat jejich výsledky.
Pokud kontroly vyžadují automatizaci, mohou ji testeři nastavit tak, aby fungovala přes noc, nebo ji sami sledovat během dne.
3. Přezkoumání výsledků
V další fázi je třeba zkontrolovat výsledky a porovnat je s výchozími a očekávanými výsledky. Pokud se při těchto testech objeví významné neočekávané odchylky jakéhokoli druhu, mohou testeři kontrolu zopakovat nebo okamžitě začít řešit, jak je opravit. Návrhy, které podávají vývojářům, mohou být zásadní pro určení správného postupu – a jejich hlášení o chybách mohou být podrobně popsána.
4. Hlášení o testu
Po aukci výsledků testů začne tým pro zajištění kvality přezkoumávat samotný postup testování a na jeho základě určí, zda byl jejich přístup k průzkumnému testování vhodný.
V této souhrnné zprávě o zkoušce může být dokonce uvedeno, že při kontrolách došlo k provozním chybám, které vyžadují opakování zkoušky. Testovací tým může také aplikaci znovu zkontrolovat, jakmile vývojáři tyto problémy opraví, aby zjistil, zda byli úspěšní.
Osvědčené postupy pro průzkumné testování
Mezi nejefektivnější postupy průzkumného testování patří:
1. Párování testerů
Mnoho forem průzkumného testování těží ze spolupráce testerů – to dále zjednodušuje proces a umožňuje více pohledů na stejné kontroly.
Párové testování také zabraňuje možnosti tunelového vidění a podporuje kreativnější návrh testů.
Práce více lidí na stejných testech může vést k větší přesnosti ve všech oblastech a rozdělení pracovní zátěže také přispívá k tomu, že testování je pro celý tým mnohem rychlejší.
2. Kombinace manuálních a automatizovaných testů
Některé společnosti se stále snaží zavést automatizaci, zatímco jiné ji nadužívají, i když by manuální perspektivy mohly být přínosnější. Vyvážení těchto kontrol dohromady umožňuje testovacímu týmu pokrýt více oblastí a zajistit kvalitu celé aplikace, včetně subjektivnějších aspektů, jako je například rozhraní softwaru.
Jediným způsobem, jak zaručit úplné pokrytí všech funkcí a vlastností testem, je společné provádění manuálních a automatizovaných testů.
3. Porozumět trhu
Během testování je důležité, aby testeři znali cílovou skupinu i konkurenci; to jim pomůže posoudit, jak budou lidé pravděpodobně reagovat na aktuální funkce aplikace.
Některé funkce jsou velmi žádané a testovací tým může využít jejich upřednostnění při kontrolách. Přestože musí také zachovat široké testovací pokrytí. To by mohlo určit směr testování spolu s potenciálním úspěchem softwaru při uvedení na trh.
4. Použití skutečných zařízení pro testování
Týmy testující software mohou pro usnadnění průzkumných kontrol využívat emulátory, které mohou být užitečné, ale jen zřídkakdy odrážejí praktické uživatelské prostředí.
Skutečná zařízení pomáhají zvýšit spolehlivost průzkumného testování tím, že vytvářejí realističtější zkušenosti – emulátory jsou nedokonalé a mohou obsahovat chyby, které se u zákazníků nevyskytují.
Emulace je rychlý způsob, jak otestovat více platforem, ale nenahradí skutečná zařízení.
Typy výstupů z průzkumného testu
Po provedení kontroly mohou testeři získat různé výstupy, včetně:
1. Výsledky testů
Samotné výsledky mají mnoho podob, protože průzkumné testování může zahrnovat stovky jedinečných testů. Tyto výsledky tvoří většinu výstupů testovací rutiny a poskytují důležité informace o stavu aplikace a její schopnosti uspokojovat potřeby uživatelů.
Po obdržení těchto výsledků mohli testeři znovu zkontrolovat systém a ověřit informace, aby určili svůj další postup.
2. Zkušební protokoly
Vlastní protokoly aplikace často odhalují chyby a problémy během procesu testování; ty poskytují nejsilnější vodítka, proč software v testu neuspěl. Starší testeři jsou obzvláště zkušení v interpretaci protokolů aplikace, což jim umožňuje identifikovat příčinu komplikovaných problémů.
Čím více informací testeři z těchto protokolů získají, tím více mohou pomoci vývojářům.
3. Zkušební protokoly
V závislosti na postupu automatizace týmu mohou jejich výstupy automaticky generovat hlášení o chybě. Jsou zde uvedeny všechny chyby, které se v aplikaci vyskytují, případně jejich příčiny a další údaje důležité pro vývojáře.
Testeři tak mohou vyjádřit svůj vlastní názor na to, zda je software připraven ke spuštění, což se běžně označuje jako rozhodnutí „go/nogo“.
Příklady průzkumného testování
Zde jsou tři příklady, jak může společnost využít průzkumné testování:
1. Mobilní herní aplikace
Pokud chce herní společnost vydat významnou aktualizaci mobilní aplikace, mohou průzkumní testeři zkontrolovat staré i nové funkce, aby zjistili, zda je aplikace stále stabilní. To může zvýšit složitost softwaru natolik, že na některých zařízeních nepůjde spustit.
Testeři se snaží minimalizovat tyto dopady a zároveň zajistit použitelnost na co největším počtu platforem.
Průzkumní testeři důkladně prověřují hru a mnoho složitých scénářů, aby se ujistili, že každá funkce funguje tak, jak má; tento proces obvykle vyžaduje manuálního testera.
2. Webové stránky poskytovatele služeb
Webové stránky se také podrobují průzkumnému testování, aby se ověřilo, že fungují pro uživatele i zaměstnance, takže testeři mohou začít přihlášením na web. Testuje se schopnost webu vytvářet nové uživatelské profily a ověřuje se, zda uživatelé nemají přístup k funkcím správy.
Poté testující přejdou ke kontrole služby, která může mít podobu rezervace schůzky nebo objednávky. Poté dokončí nákup, aby se ujistili, že pokladna funguje správně, a následně se podívají na e-mailové potvrzení objednávky a historii účtu.
3. Systém řízení nemocnice
Z průzkumného testování mohou těžit aplikace a systémy všeho druhu. U systémů pro správu nemocnic se tester může zaměřit na to, jak modul plateb spolupracuje s dalšími funkcemi.
Vyšší úrovně integrace mohou bez důkladného testování vést k významným chybám. Tyto kontroly by mohly zahrnovat architektonický diagram sledující mnoho komponent systému a jejich vzájemné vazby.
Testeři se také zabývají problémy v předchozích iteracích systému a konkrétně testují, zda jsou stále přítomny, a v případě odhalení chyb přijmou rychlá opatření.
Typy chyb a nedostatků zjištěných při průzkumném testování
Mezi chyby, které mohou testeři během průzkumného testování odhalit, patří:
1. Nekompatibilní funkce
Některé funkce v aplikaci nemusí vzájemně spolupracovat podle očekávání, což může vést k tomu, že uživatelé nebudou moci dokončit nákupy nebo aplikaci používat. Testeři kontrolují jednotlivé funkce samostatně i ve vzájemné kombinaci, aby se ujistili, že vše do sebe zapadá.
2. Nesprávný návrh uživatelského rozhraní
Uživatelské rozhraní aplikace přesně určuje, jak kdo software používá. Pokud například důležité funkce nejsou pro zákazníky zřejmé, nemusí si všimnout, že tyto funkce existují, což omezuje jejich požitek z aplikace.
Manuální testování uživatelského rozhraní identifikuje a opravuje uživatelsky nepřívětivý design.
3. Chyby při ověřování
Mnoho aplikací a webových stránek umožňuje vytvoření uživatelského profilu s určitými právy. Je důležité, aby testeři zkontrolovali, zda běžní uživatelé nemohou při používání softwaru nějakým neočekávaným způsobem získat přístup k citlivým datům nebo dokonce k funkcím správy.
4. Mrtvý kód
Testeři mohou v aplikaci najít zastaralý kód, který může být dokonce příčinou výrazných problémů s výkonem. Mrtvý kód příliš komplikuje vnitřní fungování aplikace a může vést k chybám, kterým se lze vyhnout. Díky identifikaci a optimalizaci je software pro zaměstnance a uživatele pohotovější.
Běžné metriky průzkumného testování
Mezi obvyklé metriky, se kterými se testeři mohou během průzkumných testů setkat, patří:
1. Metriky testů výkonnosti
Výsledkem průzkumných testů, které zkoumají obecný výkon aplikace, může být široká škála metrik. To může zahrnovat minimální, průměrnou a maximální dobu odezvy spolu s mírou selhání a úspěšnosti pro určení stability.
2. Metriky pokrytí testů
Pokrytí testů je důležité, protože určuje, kolik kategorií a aspektů aplikace testy zahrnují. Procento pokrytí požadavků například hodnotí, zda existují funkce, které vyžadují další kola testování.
3. Celková účinnost testu
Sledování počtu úspěšných a neúspěšných kontrol pomáhá testerům zjistit celkový stav aplikace. Kromě toho může tým sledovat, kolik zjištěných chyb je kritických.
4. Rozložení závad
Podobně kontrola rozložení chyb ukazuje, které komponenty nebo funkce jsou nejvíce náchylné k chybám. Může se jednat o části aplikace, které často interagují s ostatními, a proto je nutné tyto testy upřednostnit.
5. Regresní metriky
Průzkumné regresní testování umožňuje testerům zjistit, jak se chovají různé iterace téhož softwaru a jaký to může mít dopad na výkon.
Konkrétní metriky, které s tím pomáhají, jsou míra vstřikování defektů a počet defektů na sestavení.
Vyjasnění některých nejasností: Testy ad hoc vs. průzkumné testy
Vzhledem k velkému důrazu na svobodu testera si někteří lidé často pletou průzkumné testování s ad hoc testováním. Oba formáty mají několik společných rysů, ale v konečném důsledku slouží k různým účelům.
1. Co je testování ad hoc?
Ad hoc testování je zcela nestrukturovaný přístup, který se vymyká konvenčnímu návrhu testů a umožňuje najít chyby, které by se jinak neobjevily.
Tato forma testování obvykle nezahrnuje žádnou dokumentaci, což ztěžuje reprodukci problémů, pokud si tester není naprosto jistý jejich příčinou.
Jedním z příkladů je „opičí testování“, kontrola, která zahrnuje náhodné vstupy a jejímž cílem je nakonec systém rozbít.
Podobně jako u průzkumného testování pracuje mnoho ad hoc testerů na těchto kontrolách ve dvojicích, což zvyšuje jejich spolehlivost. Přístup ad hoc může být užitečný po formálním provedení testů, aby se zajistilo, že kontroly zohlední všechny možnosti; to také pomáhá, když je na další testování málo času. Při správném provedení jsou ad hoc testy velmi přínosné.
2. Rozdíly mezi průzkumným testováním a testy ad hoc
Testování ad hoc obvykle nezahrnuje žádnou formální dokumentaci. To je v ostrém kontrastu s průzkumnými testy, u nichž je vzhledem k improvizované povaze těchto kontrol vedení záznamů ještě důležitější.
Průzkumné testy využívají větší množství formálních testovacích technik, zatímco ad hoc kontroly se tomu vyhýbají tím, že se dívají mimo konvenční testovací etiketu. To jim pomáhá odhalit chyby, na které by jinak testeři nikdy nepřišli.
Průzkumné testování má jasné cíle a hranice, ale přesto umožňuje členům týmu používat kreativní testy. Ad-hoc testy obvykle nemají definovatelný konečný cíl, kromě toho, že se software snaží prosadit, jak jen to jde. Ad hoc testování často zahrnuje i předchozí znalost softwaru a jeho funkcí, zatímco průzkumné testování zahrnuje poznávání aplikace do běžných procesů.
Průzkumné testování v agilním přístupu
Agilní metodika výrazně podporuje neustálé zlepšování. To znamená, že se dobře kombinuje s průzkumnými testy, zejména s rostoucí poptávkou po častých aktualizacích softwaru.
Kombinace průzkumného testování s agilní metodou může členům týmu poskytnout silnější strukturu testování díky začlenění plánování vydání a provádění sprintů do jejich harmonogramů. Společnost, která využívá agilní techniky, by je mohla ještě více zužitkovat spojením s průzkumným testováním; to je skvělý způsob, jak testovat jednotlivé softwarové komponenty aplikace. Vzhledem k tomu, že testeři mohou provádět průzkumné kontroly bez skriptů, šetří to pracovníkům zajišťujícím kvalitu i vývojářům mnoho drahocenného času.
Automatizované průzkumné testování tyto úspory ještě umocňuje, protože pomáhá firmám mnohem rychleji zkontrolovat nejnovější iterace jejich aplikací, a to potenciálně i přes noc. Průzkumné kontroly přinášejí rychlé a použitelné výsledky a vývojáři mohou provést potřebné změny v rámci dalšího sprintu.
Manuální průzkumné testování má ve spojení s agilním přístupem stále mnoho výhod díky své schopnosti identifikovat problémy, které by automatizovaný přístup mohl přehlédnout. Jiné formy testování jednoduše trvají příliš dlouho nebo poskytují příliš málo výhod, než aby se pohodlně vešly do agilního rámce. Průzkumné kontroly mohou zajistit, že každá agilní fáze výrazně zlepší software a jeho funkčnost.
7 chyb a nástrah, kterým je třeba se vyhnout při provádění průzkumných testů
Zde je sedm nejčastějších chyb, kterých se firmy při zavádění průzkumných testů často dopouštějí, a také návod, jak se jim mohou vyhnout:
1. Nevyvážené manuální/automatické testování
Zjištění, které testy fungují nejlépe při ruční kontrole a které by bylo vhodné automatizovat, zabere čas, ale umožní týmům testovat mnohem efektivněji.
Příliš mnoho automatizovaných testů může vést k tomu, že aplikace bude těžkopádná nebo uživatelsky nepřívětivá kvůli absenci lidského testera.
2. Časová omezení
Průzkumné testování je rychlejší než mnoho jiných forem testování, ale vzhledem k termínům projektu je stále omezeno množství testů, které může tým provést.
Řízení času a snaha o pokrytí testů pomáhají testovacímu týmu provést co nejvíce kontrol v mnoha širokých kategoriích.
3. Nepružné testery
Přestože průzkumní testeři nevyžadují předchozí znalost softwaru ani zvlášť hluboké dovednosti, kontroly stále závisí na schopnostech a iniciativě jednotlivých členů týmu.
Vedoucí projektu musí tyto testovací role přidělovat s rozmyslem a v případě potřeby je vyhradit kreativnějším a intuitivnějším členům týmu.
4. Obtížná replikace selhání
Ne vždy je zřejmé, které činnosti přispívají k selhání testu, a může být také nejasné, které aspekty aplikace jsou na vině.
Proto mnoho průzkumných přístupů zahrnuje párování testerů nebo dokonce přímé nahrávání obrazovky testera, aby bylo možné lépe pochopit problémy a jejich přesné příčiny.
5. Nejasná dokumentace
Ať už se jedná o automatizované hlášení o chybách nebo ruční záznam provedených testů, dobrá dokumentace usnadňuje vývojářům postupovat na základě zjištění testovacího týmu.
Testovací tým se musí zavázat, že zajistí kvalitní vedení záznamů během každé jednotlivé kontroly a že v každé zprávě uvede co nejvíce podrobností.
6. Vysoká očekávání
Průzkumné testování je přínosné téměř pro každý softwarový projekt, ale jeho rozsah je stále omezený – nejlépe funguje ve spojení s dalšími metodami testování.
Testovací týmy musí tyto kontroly provádět vedle obvyklých skriptovaných testů; jen tak mohou oddělení zajištění kvality zajistit trvale široké pokrytí testů.
7. Nesprávná automatizace
Je důležité, aby testovací tým a projektový manažer pochopili, který automatizační software přináší pro danou aplikaci největší výhody.
Různé možnosti třetích stran nabízejí své vlastní jedinečné funkce, takže výběr týmu může rozhodnout o úspěchu robotické automatizace procesů; musí zvážit všechny možnosti předem.
5 nejlepších bezplatných nástrojů pro průzkumné testování
Mezi pět nejlepších nástrojů pro průzkumné testování, které mohou týmy zajišťující kvalitu používat zdarma, patří:
1. ZAPTEST FREE Edition
ZAPTEST Free poskytuje funkce prémiové úrovně za nulové náklady, což umožňuje každé organizaci využívat výhod snadné implementace průzkumných testů.
Tato aplikace dokáže automatizovat jakoukoli platformu, zařízení a prohlížeč díky inovativní technologii 1SCRIPT.
ZAPTEST také poskytuje flexibilní automatizaci RPA, která umožňuje kombinovat ji s manuálním přístupem.
2. Výzkumná aplikace XRAY
XEA umožňuje uživatelům vytvářet komplexní karty testů a snadno zaznamenávat jejich průběh, což zjednodušuje fázi hlášení chyb při průzkumném testování.
Tato možnost se zaměřuje výhradně na pohled uživatele a nabízí centralizované centrum výsledků pro aktualizaci ostatních testerů.
Systém XRAY však v současné době nemá integrovanou automatizaci, což může omezit jeho dlouhodobou účinnost.
3. Magnet na brouky
Rozšíření prohlížeče, které nabízí důkladné průzkumné testování, Bug Magnet umožňuje testerům kontrolovat okrajové případy a další problematické hodnoty.
Toto rozšíření také umožňuje jednoduchou integraci fiktivního textu, e-mailových adres a více znakových sad.
Je však k dispozici pouze pro prohlížeče Firefox a Chrome, takže je méně univerzální než její konkurenti.
4. Testovací plány Azure
Azure Test Plans je klíčovou součástí platformy Azure společnosti Microsoft a umožňuje testerům získávat bohaté údaje v mnoha scénářích.
Tato možnost je vhodná jak pro desktopové, tak pro webové aplikace a zároveň poskytuje komplexní sledovatelnost, která má jasný záznam o vývoji softwaru.
Tento přístup však často vyžaduje hlubší integraci se službou Azure, což je na úkor flexibility.
5. Testiny
Testiny se specializuje na manuální průzkumné testování a nabízí inteligentní editor, který umožňuje testerům navrhovat kontroly pomocí stromové struktury pro maximální flexibilitu.
Každá změna běhu nebo testovacího případu zůstává v historii aplikace, aby byla zajištěna plná odpovědnost a sledovatelnost.
Ta je však zdarma pouze pro malé týmy a projekty s otevřeným zdrojovým kódem.
Kdy byste měli použít nástroje pro průzkumné testy pro podniky a kdy pro bezplatné nástroje?
Přestože se do průzkumného testování vyplatí investovat a prémiové aplikace obvykle nabízejí více funkcí, existuje mnoho bezplatných možností, které poskytují více než dost funkcí.
Průzkumné testování by mohlo být významným provozním nákladem, pokud se zavážete k prémiovému modelu, ale ne každá společnost nebo tým zabývající se vývojem softwaru na to má peníze. Výběr nejlepšího softwaru třetí strany často závisí na konkrétních požadavcích firmy.
Placené řešení může být jediným způsobem, jak uspokojit potřeby daného projektu; tým musí prozkoumat různé možnosti, než se rozhodne pro aplikaci.
Společnosti s menšími týmy mohou nejvíce využít bezplatné testovací nástroje, protože mnoho možností je zdarma pro omezený počet uživatelů.
Případně mohou vybrat možnosti bez tohoto omezení a takové, které jsou schopny přizpůsobit se rozsahu testovacího týmu. Díky tomu by mohlo být ještě schůdnější vytvořit dvojice průzkumných testerů, aby se zajistily přesnější výsledky – tým bude přirozeně potřebovat méně uživatelských profilů.
Mnoho služeb nabízí bezplatnou zkušební verzi svého softwaru, aby organizace mohly zjistit, zda vyhovuje jejich potřebám; tato zkušební verze obvykle trvá jen několik týdnů.
Kontrolní seznam průzkumného testování, tipy a triky
Existuje mnoho dalších tipů, které mohou testeři zohlednit při zahájení průzkumných kontrol, včetně:
1. Vhodně rozdělte funkce a moduly
Aby se předešlo nedorozumění, měly by si testovací týmy vytvořit jasný seznam všech funkcí a kontrol, které hodlají provést. To také znamená zajistit, aby testy byly přiměřeně rozloženy mezi jednotlivé funkce softwaru.
Pro dosažení nejlepších výsledků je nanejvýš důležité, aby se testovací tým dohodl, kteří členové provedou jednotlivé testy na základě svých schopností a silných stránek.
2. Práce na pochopení softwaru
Fáze učení je důležitou součástí průzkumného testování. To znamená, že testeři se musí aktivně zapojit do práce se softwarem a zjistit, jak funguje, a teprve poté navrhnout testy.
Poznávání vnitřního fungování tohoto softwaru může být procesem spolupráce, který zajistí lepší porozumění v celém týmu. To umožňuje testerům vytvářet lepší kontroly a testovací případy.
3. Zjistěte problematické oblasti
Každá aplikace má funkce nebo součásti, které se prolínají s ostatními. S rostoucí složitostí softwaru se zvyšuje pravděpodobnost výskytu chyb, což může vyžadovat více testování. Tým musí aktivně pracovat na tom, aby zjistil, které složky potřebují další pomoc.
Mohou použít specifické testovací trasy, které nejlépe odrážejí potřeby aplikace a celkové priority týmu v oblasti testování.
4. Začněte se základními uživatelskými scénáři
Týmy zajišťující kvalitu mohou v případě potřeby provádět průzkumné testy v libovolném pořadí, ale může být užitečnější začít s jednoduššími kontrolami, než se pustí do složitějších funkcí.
To umožňuje plynulý postup z hlediska složitosti a dává testerům možnost porozumět softwaru. Pomáhá také otestovat, zda základní funkce fungují podle očekávání.
5. Vytvoření dvojice testerů
Párové průzkumné testování zefektivňuje a zároveň ověřuje fázi zajištění kvality a umožňuje testerům pracovat s naprostou jistotou při každé kontrole. Spolupráce zefektivňuje jakoukoli formu testování tím, že zlepšuje obeznámenost každého člena týmu s daným softwarem.
Díky svému individuálnímu pohledu na věc mohou také poskytovat mnohem podrobnější hlášení o chybách, a poskytnout tak vývojářům více informací, se kterými mohou pracovat.
6. Proveďte několik testů
Schopnost týmu znovu otestovat aplikaci závisí na časovém plánu a termínech, které jsou před ním. Pokud je to však možné, může být užitečná dvojitá kontrola zvláště problematických součástí.
Opakováním testů lze navíc ověřit, že dříve zjištěný problém je již odstraněn a nebude mít na software další vliv. Tato pečlivost je někdy nutná, aby bylo testování úspěšné.
Závěr
Průzkumné testování má co nabídnout firmám vyvíjejícím software všeho druhu, protože je doplňkem skriptovaného testování a mnoha dalších kontrol.
S pomocí průzkumného testování mohou týmy zajišťující kvalitu testovat aplikace na vyšší úrovni, což zlepší kvalitu výsledného softwaru a pomůže vývojářům opravit případné chyby.
Největší přínos může zajistit kombinace manuálního a automatizovaného průzkumného testování, která umožní věnovat stejnou pozornost všem složkám softwaru.
Pokud vaše společnost potřebuje software pro automatizaci průzkumu, ZAPTEST FREE Edition nabízí mnohem širší a flexibilnější funkce než jiné prémiové aplikace a umožňuje testerům tyto kontroly snadno optimalizovat.
Často kladené dotazy a zdroje
1. Nejlepší kurzy automatizace průzkumných testů
Pro nové i zkušené průzkumné testery by mohly být přínosné kurzy pro zlepšení jejich dovedností. To zahrnuje i zjištění, jak přistupovat k novému softwaru.
Mezi užitečné kurzy, které vám v tom mohou pomoci, patří:
– Kompletní testovací tábor 2023 Software Bootcamp na Udemy; v rámci tohoto tábora se v 28 hodinách vyučuje testování softwaru v širokém rozsahu.
– Coverosovo průzkumné testování; zaměřuje se na to, jak vytvářet charty a aplikovat průzkumné testy na rozhraní API.
– Dvoudenní školení průzkumného testování od společnosti Polteq, které se zabývá tím, jak průzkumné testy fungují v agilním kontextu.
– Průzkumné testování LinkedIn; ukazuje, jak moderní testování softwaru zahrnuje průzkumné kontroly.
– Úvod do testování softwaru na serveru Coursera, který pomáhá začínajícím testerům pochopit typické postupy.
2. Jakých je 5 nejčastějších otázek při pohovorech o průzkumném testování?
Při pohovorech na pozice průzkumného testování je důležité, aby personalisté kladli dobré otázky, které umožní přesně posoudit dovednosti a zkušenosti uchazeče.
Pět nejdůležitějších otázek:
– Jaké jsou hlavní rozdíly mezi skriptovaným a průzkumným testováním, včetně jejich vhodnosti?
– S jakými problémy jste se jako průzkumný tester setkal a jak jste je překonal?
– Uveďte příklady průzkumných testů, u kterých by automatizace robotických procesů byla nejpřínosnější.
– Jaká je podle vás nejdůležitější dovednost (technická nebo jiná) pro exploratorního testera?
– Co byste poradil testerovi, který se snaží porozumět softwaru a jak ho zkontrolovat?
3. Nejlepší výukové programy na YouTube o průzkumném testování
Na webových stránkách pro sdílení videí, jako je YouTube, je k dispozici mnoho bezplatných výukových materiálů, které mohou budoucím testerům pomoci pochopit jeho základní principy. Některé z nich jsou součástí série, zatímco jiné jsou jednorázovými videoklipy s hlubokým ponorem do tématu.
Mezi kanály, které tyto výukové programy nabízejí, patří:
– The Testing Academy nabízí stovky videí, která pokrývají všechny aspekty testování softwaru.
– Software Testing Mentor, který podobně nabízí rozsáhlá videa o základech testování softwaru.
– QAFox, který také poskytuje příklady z reálného světa a živé projekty, které doplňují všechna videa.
– SDET-QA Automation Techie, která obsahuje několik obsáhlých videí o různých přístupech k testování.
– GlitchITSystem, který se zabývá různými webovými stránkami pomocí průzkumného testování a snaží se odhalit chyby.
4. Jak udržovat průzkumné testy?
Dobře provedené průzkumné testy obsahují podrobnou dokumentaci, ke které se vývojáři a budoucí testeři vracejí v novějších iteracích softwaru.
Při významných aktualizacích aplikace je nutné znovu otestovat její primární funkce, aby se zajistilo, že tyto doplňky nebudou mít negativní dopad na již existující funkce.
Jen tak lze zaručit, že průzkumné testy zůstanou dlouhodobě úspěšné. Pomáhá také zohlednit budoucí plány, například předběžné funkce, při navrhování původní aplikace a jejích kontrol.
Pracovníci oddělení QA musí tyto testy vhodně naplánovat a zjistit, kdy je třeba aplikaci překontrolovat; s tím mohou týmu pomoci nástroje pro automatizované testování.
5. Je průzkumné testování black-box testování?
Průzkumné testování je velmi podobné testování černé skříňky, které znamená kontrolu aplikace pomocí zkoumání jejích funkcí bez přímé kontroly kódu.
Typy kontrol, které spadají do průzkumného testování, nejsou výslovně omezeny; tento přístup může zahrnovat všechny aspekty softwaru, včetně kódu.
Jednou z klíčových podobností mezi těmito dvěma typy testování je nedostatek předvídavosti testera. Testeři černé skříňky obvykle nejsou před testováním softwaru obeznámeni s jeho fungováním a průzkumní testeři se v rámci počátečního zkoumání dozvědí, jak software funguje.
Přestože průzkumné testování obecně není vždy klasifikováno jako testování černé skříňky, je pravda, že se tyto dva přístupy značně prolínají.