Get your 6-month No-Cost Opt-Out offer for Unlimited Software Automation?

 

Ad-hoc testování je typ testování softwaru, který vývojáři a softwarové společnosti provádějí při kontrole aktuální iterace softwaru. Tato forma testování umožňuje lepší vhled do programu a odhaluje problémy, na které by běžné testování nemuselo upozornit.

Je nanejvýš důležité, aby testovací týmy dokonale porozuměly procesu ad hoc testování, aby věděly, jak obejít jeho problémy, a aby se ujistily, že tým může tuto techniku úspěšně implementovat.

Přesná znalost toho, jak ad-hoc testování funguje a které nástroje mohou usnadnit jeho provádění, umožňuje podniku neustále zlepšovat vlastní postupy pro zajištění kvality. Formální proces testování se řídí velmi specifickými pravidly, což může vést k tomu, že tým přehlédne některé chyby – ad-hoc kontroly mohou tato slepá místa obejít a rychle otestovat každou funkci softwaru.

 

V tomto článku se blíže seznámíme s ad-hoc testováním a s tím, jak jej můžete využít ve svůj prospěch při vývoji softwarového produktu.

 

Table of Contents

Význam testování ad hoc: Co je to testování ad hoc?

kontrolní seznam uat, nástroje pro testování webových aplikací, automatizace a další

Ad-hoc testování je proces zajištění kvality, který se vyhýbá formálním pravidlům a dokumentaci – pomáhá testerům najít v aplikaci chyby, které běžné přístupy nedokážou odhalit. To obvykle vyžaduje komplexní znalost softwaru před zahájením testování – včetně porozumění vnitřnímu fungování programu. Cílem těchto ad-hoc kontrol je narušit aplikaci způsobem, který odráží vstupy od uživatelů, a zohlednit různé potenciální situace, aby vývojáři mohli opravit případné problémy.

Nedostatek dokumentace je pro tuto techniku zásadní, protože neobsahuje žádný kontrolní seznam ani testovací případy, které by testery vedly k procházení funkcí aplikace. Ad-hoc testování spočívá výhradně v testování softwaru způsobem, o kterém tým rozhodne, že je v danou chvíli efektivní. To může zohlednit již existující formální testy, ale může to také jednoduše zahrnovat provedení co největšího počtu testů v (pravděpodobně omezeném) čase, který je pro tuto techniku vyčleněn.

 

1. Kdy a proč je třeba provádět testování Ad-Hoc při testování softwaru?

Výhody zřízení testovacího centra excelence. Liší se testování výkonnosti od funkčního testování?

Hlavním důvodem, proč společnosti provádějí ad-hoc testování, je jeho schopnost odhalit chyby, které tradiční přístupy nedokážou najít. Důvodů může být celá řada, například konvenční testovací případy se řídí obzvláště standardizovaným postupem, který nemůže zohlednit zvláštnosti aplikace.

Každý typ testování může nabídnout nové perspektivy a zajímavé přístupy k zajištění kvality – to také ukazuje problémy s obvyklou strategií testování. Pokud například ad-hoc testování dokáže identifikovat problém, který testovací případy týmu neřeší, naznačuje to, že by bylo vhodné rekalibrovat metodiku testování.

Testeři mohou provádět ad-hoc kontroly v kterémkoli bodě procesu testování. Obvykle slouží jako doplněk k tradičnímu (a formálnějšímu) zajišťování kvality a s ohledem na to mohou testeři provádět kontroly ad hoc, zatímco jejich kolegové provádějí formálnější kontroly. Mohou však raději nechat ad-hoc kontroly až na dobu po formálním testování jako následný krok, který se konkrétně zaměří na potenciální slepá místa.

Ad-hoc testování může být užitečné také v případech, kdy je čas omezen zejména kvůli nedostatku dokumentace – správný čas závisí na společnosti a jejím preferovaném přístupu.

 

2. Když nepotřebujete provádět testování Ad-Hoc

Výhody zřízení testovacího centra excelence. Liší se testování výkonnosti od funkčního testování?

Pokud není dostatek času na provedení ad-hoc i formálního testování, je důležité, aby tým upřednostnil druhé jmenované, protože to zajistí podstatné pokrytí testů – i když v nich stále existují určité mezery.

Pokud tým při formálních testech zjistí chyby, které je třeba opravit, je obecně lepší počkat, až vývojáři dokončí potřebné změny, a provést ad-hoc kontroly. V opačném případě by výsledky, které poskytují, mohly být brzy zastaralé, zejména pokud se testy týkají komponenty, u které se již vyskytly chyby.

Kromě toho musí před fází beta testování proběhnout ad-hoc testování.

 

3. Kdo se podílí na testování Ad-Hoc?

kdo by se měl zabývat nástroji pro automatizaci testování softwaru a plánováním.

Do procesu testování Ad-Hoc je zapojeno několik klíčových rolí, včetně:

– Testeři softwaru jsou hlavními členy týmu, kteří provádějí ad hoc kontroly. Pokud se provádí testování ve dvojici, pak několik těchto testerů pracuje společně na stejných komponentách.

– Vývojáři mohou nezávisle používat tyto kontroly před formální fází zajištění kvality k rychlé kontrole vlastního softwaru, i když je to méně důkladné než specializované ad-hoc testování.

– Vedoucí týmů nebo oddělení schvalují celkovou strategii testování – pomáhají testerům určit, kdy zahájit ad-hoc testování a jak ho provést, aniž by narušili ostatní kontroly.

 

Výhody testování Ad-Hoc

Zaptest, nejlepší nástroj pro automatizaci funkčního testování

Mezi výhody ad-hoc testování při testování softwaru patří:

 

1. Rychlá řešení

 

Protože tyto testy nevyžadují častou dokumentaci před kontrolou, během ní ani po ní, mohou týmy mnohem rychleji identifikovat problémy. Tato jednoduchost nabízí testerům obrovskou svobodu.

Pokud například tým otestuje nějakou komponentu a nemůže identifikovat žádné chyby, může jednoduše přejít k dalšímu testu, aniž by to zaznamenal do dokumentu.

 

2. Doplňuje ostatní typy testů

 

Žádná strategie testování není dokonalá a 100% pokrytí je obvykle nemožné dosáhnout – a to i při komplexním plánu. V běžném testování budou vždy existovat mezery, proto je důležité, aby společnosti integrovaly více přístupů.

Ad-hoc testování se zaměřuje zejména na nalezení problémů, které formální testování nemůže pokrýt, a zaručuje tak širší celkové pokrytí testů.

 

3. Flexibilní provedení

 

Ad-hoc testování může probíhat v kterémkoli bodě procesu zajištění kvality před beta testováním, což umožňuje společnostem a týmům rozhodnout, kdy je nejlepší tyto kontroly provést. Mohou se rozhodnout provést ad-hoc testy souběžně s běžným testováním nebo mohou počkat až na pozdější testování – bez ohledu na to, co mají k dispozici, tým z těchto možností těží.

 

4. Větší spolupráce

 

Vývojáři jsou do tohoto procesu zapojeni více než do mnoha jiných forem testování – zejména pokud společnost používá buddy a párové testování.

Vývojáři tak získají lepší přehled o svých vlastních aplikacích a mohou být schopni řešit chyby na vyšší úrovni. To pomáhá ještě více zlepšit celkovou kvalitu softwaru.

 

5. Různé perspektivy

 

Ad-hoc testování může ukázat aplikaci z nových úhlů pohledu, což testerům pomůže zapojit tyto funkce novým způsobem. Další pohledy jsou v průběhu testování velmi důležité, protože formální kontroly mají často alespoň drobné nedostatky.

Pokud testeři ad-hoc používají software s konkrétním záměrem jej prolomit, budou moci snadněji určit limity programu.

 

Úskalí testování ad hoc

testování zátěže

Proces ad-hoc testování se také potýká s několika problémy, jako jsou např.:

 

1. Obtíže s hlášením

 

Nedostatek dokumentace sice urychluje ad-hoc testování, ale může také ztížit hlášení jiných než závažných problémů.

Například jedna dříve provedená kontrola se může později stát relevantnější, přestože původně nevedla k významným výsledkům. Bez komplexní dokumentace nemusí být tým schopen tyto testy vysvětlit.

 

2. Méně opakovatelné

 

Podobně si testující nemusí být plně vědomi přesných podmínek, které jsou nutné k vyvolání pozorovaných reakcí. Například ad-hoc kontrola, která vrátí chybu, nemusí mít dostatečné informace, aby tým mohl přijmout opatření. Možná nevědí, jak tento test zopakovat a získat stejný výsledek.

 

3. Vyžaduje zkušenosti se softwarem

 

Vzhledem k tomu, že při ad-hoc testování je klíčová rychlost a obvykle se jedná o pokusy o prolomení aplikace, je důležité, aby tito testeři tento program dobře znali.

Znalost fungování umožňuje testerům prolomit software a manipulovat s ním více způsoby, což však může výrazně zvýšit nároky na dovednosti při ad-hoc testování.

 

4. Omezená odpovědnost

 

Nedostatek dokumentace může způsobit více problémů než jen špatné vykazování; může také neúmyslně prodloužit proces testování a ovlivnit užitečnost rychlých individuálních ad-hoc testů.

Bez dostatečné dokumentace v každé fázi mohou mít testeři problém sledovat svůj postup. To může vést i k opakování kontroly, kterou již provedli jiní testeři.

 

5. Nemusí odrážet zkušenosti uživatelů

 

Cílem prakticky každého typu testování je zohlednit chyby, které nějakým způsobem ovlivňují koncové uživatele. Ad-hoc testování spočívá především v tom, že se zkušený tester snaží napodobit nezkušeného uživatele, což by mělo být konzistentní při každé kontrole až po pokusy o prolomení aplikace.

 

Charakteristiky testů Ad-Hoc

testování api a automatizace

Mezi hlavní charakteristiky úspěšných ad-hoc testů patří:

 

1. Vyšetřování

 

Hlavní prioritou ad-hoc testování je odhalit chyby v aplikaci pomocí technik, které běžné kontroly nezohledňují. Ad-hoc prověrky procházejí tento software s jasným cílem najít díry v testovacích postupech týmu, včetně pokrytí jejich testovacích případů.

 

2. Nestrukturovaný

 

Kontroly ad hoc obvykle nemají žádný stanovený plán, kromě provedení co největšího počtu testů mimo typické hranice formálního zajištění kvality. Testeři obvykle pro větší pohodlí seskupují kontroly podle jednotlivých komponent, ale ani to není nutné – kontroly mohou vymýšlet i v průběhu jejich provádění.

 

3. Zkušenostmi řízené

 

Ad-hoc testeři využívají svých předchozích zkušeností se softwarem k posouzení toho, které testy by přinesly největší přínos a řešily běžná slepá místa formálního testování.

Ačkoli je proces testování stále plně nestrukturovaný, testeři při rozhodování o své strategii uplatňují mimo jiné své znalosti z předchozích ad-hoc kontrol.

 

4. Široký záběr

 

Neexistuje přesný návod, které kontroly by měl tým během ad-hoc testování provádět, ale obvykle se týkají celé řady komponent – případně se více zaměřují na citlivější aspekty aplikace. To pomáhá testerům zaručit, že jejich zkoušky plně doplní formální testování.

 

Co testujeme v testech Ad-Hoc?

Testování od konce ke konci - Co je testování E2E, nástroje, typy a další informace

Týmy pro zajištění kvality obvykle testují následující prvky během ad-hoc testování:

 

1. Kvalita softwaru

 

Cílem těchto kontrol je odhalit chyby v aplikaci, které běžné testování nedokáže odhalit; to znamená, že proces testuje především celkový stav aplikace.

Čím více chyb ad-hoc testování odhalí, tím více vylepšení mohou vývojáři implementovat před termínem uzávěrky.

 

2. Testovací případy

 

Ad-hoc testování obvykle neimplementuje testovací případy – a to právě proto, aby tým mohl zkoumat, jak efektivní jsou při poskytování dostatečného pokrytí. Testovací případy jsou pravděpodobně nedostatečné, pokud ad-hoc kontroly mohou najít chyby, které běžné testovací procesy nemohou najít.

 

3. Testovací personál

 

Cílem může být také ověření dovedností a znalostí testovacího týmu, a to i v případě, že jsou testovací případy adekvátní. Například jejich metodika implementace případů může být nedostatečná a ad-hoc testování může být rozhodující pro řešení vzniklých mezer v pokrytí testů.

 

4. Softwarové limity

 

Cílem ad-hoc testování je také zjistit limity aplikace – například jak reaguje na neočekávané vstupy nebo vysoké zatížení systému. Testeři by mohli konkrétně zkoumat chybová hlášení programu a to, jak dobře tato aplikace funguje, když je pod značným tlakem.

 

Vyjasnění některých nejasností:

Testování ad hoc a průzkumné testování

Srovnání testování UAT s regresním testováním a dalšími testy

Někteří lidé považují ad-hoc a průzkumné testování za synonyma, i když pravda je složitější.

 

1. Co je průzkumné testování?

Výhody zřízení testovacího centra excelence. Liší se testování výkonnosti od funkčního testování?

Průzkumné testování se vztahuje k postupům zajištění kvality, které zkoumají software z komplexního hlediska a konkrétně kombinují procesy zjišťování a testování do jediné metody. Obvykle se jedná o střední cestu mezi plně strukturovaným testováním a zcela volnými ad-hoc kontrolami.

Průzkumné testování se nejlépe osvědčuje ve specifických scénářích, například když je nutná rychlá zpětná vazba nebo když tým musí řešit okrajové případy. Tento typ testování obvykle dosáhne svého plného potenciálu, když tým vedle něj použije skriptované testování.

 

2. Rozdíly mezi průzkumným testováním

a testování Ad-Hoc

Výhody zřízení testovacího centra excelence. Liší se testování výkonnosti od funkčního testování?

Největší rozdíl mezi ad-hoc a průzkumným testováním spočívá v tom, že ad-hoc testování používá dokumentaci k záznamu a usnadnění kontroly, zatímco ad-hoc testování se tomu zcela vyhýbá. Explorativní testování klade větší důraz na volnost testování, ale nikdy ne na takovou úroveň jako ad-hoc přístup, který je zcela nestrukturovaný.

IS YOUR COMPANY IN NEED OF

ENTERPRISE LEVEL

TASK-AGNOSTIC SOFTWARE AUTOMATION?

Průzkumné testování zahrnuje také poznávání aplikace a jejího vnitřního fungování během těchto kontrol – místo toho mají testeři ad-hoc často komplexní znalosti o funkčnosti softwaru ještě před zahájením.

 

Typy testů Ad-Hoc

testování automatizace webových aplikací

V testování softwaru existují tři hlavní formy ad-hoc testování, a to:

 

1. Testování na opicích

 

Snad nejoblíbenějším typem ad-hoc testování jsou opičí testy, při kterých tým náhodně zkouší různé komponenty.

Obvykle probíhá během procesu testování jednotek a provádí řadu kontrol bez jakýchkoli testovacích případů. Testeři nezávisle zkoumají data zcela nestrukturovaným způsobem, což jim umožňuje prozkoumat širší systém a jeho schopnost odolat intenzivnímu zatížení ze strany uživatelů.

Pozorování výstupu těchto neskriptovaných technik pomáhá testovacímu týmu identifikovat chyby, které jiné jednotkové testy přehlédly kvůli nedostatkům v konvenčních metodách testování.

 

2. Testování kamarádů

 

V ad-hoc kontextu se na buddy testech podílejí minimálně dva zaměstnanci – obvykle tester a vývojář – a probíhají především po fázi unit testů. “Kamarádi” pracují společně na stejném modulu, aby přesně určili chyby. Jejich rozmanité dovednosti a rozsáhlé zkušenosti z nich činí efektivnější tým, který pomáhá zmírnit mnoho problémů, které vznikají v důsledku nedostatku dokumentace.

Vývojář může dokonce sám navrhnout řadu testů a nechat si určit komponenty, kterým je třeba věnovat více pozornosti.

 

3. Párové testování

 

Párové testování je podobné, protože se ho účastní dva pracovníci, ale obvykle se jedná o dva samostatné testery, z nichž jeden provádí vlastní testy, zatímco druhý si dělá poznámky.

I bez formální dokumentace může vedení poznámek umožnit týmu neformálně sledovat jednotlivé ad hoc kontroly. Role testera a písaře se mohou v závislosti na testu vyměnit nebo si dvojice může ponechat své přidělené role po celou dobu procesu.

Vlastní kontroly obvykle provádí ten tester, který má více zkušeností – i když se o práci vždy dělí.

 

Manuální nebo automatizované testy Ad-Hoc?

počítačové vidění pro testování softwaru

Automatizované testování může týmům pomoci ušetřit ještě více času ve fázi zajišťování kvality, což umožní testerům zařadit do jejich rozvrhu více kontrol. I bez určité struktury je nezbytné, aby testeři pracovali na maximálním pokrytí a automatizace podporovala hloubkové kontroly tohoto softwaru.

Automatizované ad-hoc kontroly jsou obecně přesnější než manuální testy, protože se díky nim lze vyhnout lidským chybám při opakovaných úkolech – to je užitečné zejména při provádění stejných testů v různých iteracích. Úspěch tohoto postupu obvykle závisí na automatickém testovacím nástroji, který tým vybere, a na jeho funkčnosti.

Automatizované testování má však určitá omezení. Hlavní předností ad-hoc testování je například schopnost napodobit vstupy od uživatele a provádět náhodné kontroly podle toho, jak na ně tester přijde. Tyto testy by mohly ztratit svou náhodnost, pokud by se testovací program organizace potýkal se složitými kontrolami.

Čas potřebný k automatizaci těchto vysoce specifických úkolů může také omezit typickou úsporu času tohoto procesu. Je důležité, aby týmy důkladně prozkoumaly dostupné automatizační nástroje a našly takový, který odpovídá projektu jejich společnosti.

 

Co potřebujete k zahájení testování Ad-Hoc?

Automatické testování zátěže

Zde jsou uvedeny hlavní předpoklady testování ad hoc:

 

1. Kvalifikovaný personál

Vzhledem k tomu, že ad-hoc testy představují rychlou, náhodnou kontrolu vnitřního fungování softwaru, obvykle pomáhají testeři, kteří mají s daným softwarem zkušenosti. Měli by také znát klíčové principy testování – to jim umožní snadno určit nejúčinnější kontroly.

 

2. Nestrukturovaný přístup

Testeři musí být ochotni opustit své obvyklé strategie pro ad-hoc testování; tento způsob myšlení je stejně důležitý jako samotné kontroly kvality. Tato metoda může být úspěšná pouze bez struktury nebo dokumentace a je nezbytné, aby na to testeři pamatovali v každé fázi.

 

3. Software pro automatizaci

Ačkoli ad-hoc testování spočívá spíše v testování náhodných vstupů a podmínek, automatizace je stále velmi účinnou technikou v jakémkoli kontextu.

Z tohoto důvodu by se při ad hoc kontrolách měly stále používat automatizované testovací nástroje, pokud je to možné, protože správná aplikace může tento proces výrazně zefektivnit.

 

4. Další formy testování

Ad-hoc testy nejlépe fungují spolu s dalšími kontrolami, které mají formálnější přístup – pomáhají týmu zaručit podstatné pokrytí celého softwaru. Je důležité, aby testeři kombinovali různé techniky, ačkoli to může být před, během nebo po dokončení ad-hoc testování.

 

Proces testování ad hoc

Testování koncového zařízení, nástroje, co to je, typy, přístupy

Obvyklé kroky, které by měli testeři při testování softwaru ad-hoc dodržovat, jsou:

 

1. Definování cílů ad-hoc testů

 

Tato fáze je omezená kvůli nedostatku dokumentace a struktury, ale přesto je nejdůležitější, aby měl tým jasné zaměření. Testeři mohou začít sdílet nejasné představy o tom, které testy mají být provedeny a kterým komponentám mají dát přednost.

 

2. Výběr testovacího týmu ad-hoc

 

Když tým vymýšlí řadu možných ad-hoc kontrol, zjišťuje také, kteří testeři by byli pro tento typ testování nejvhodnější. Obvykle vybírají testery, kteří aplikaci dobře rozumí, a mohou je také spojit s vývojářem.

 

3. Provádění ad-hoc testů

 

Po rozhodnutí, kteří testeři jsou pro tuto fázi vhodní, zahájí tito členové týmu kontrolu v dohodnutém bodě testování. Jejich cílem je provést co nejvíce kontrol ad hoc, které testeři mohou vymyslet až v této fázi.

 

4. Vyhodnocení výsledků testů

 

Po dokončení testů (nebo i mezi jednotlivými kontrolami) testeři vyhodnotí výsledky, ale bez jejich formálního zdokumentování v testovacím případu. Pokud zjistí nějaké problémy s aplikací, neformálně je zaznamenají a projednají další postup týmu.

 

5. Hlášení objevených chyb

 

Po vyhodnocení výsledků musí testeři informovat vývojáře o chybách v softwaru, aby měli dostatek času na jejich opravu před vydáním.

Testovací tým také využívá tyto informace k určení, jak zlepšit své formální testovací procesy.

 

6. Opakované testování podle potřeby

 

Testovací tým pravděpodobně zopakuje proces ad-hoc pro nové iterace aplikace, aby ověřil, jak dobře zvládá aktualizace. Vzhledem k tomu, že testeři již opravili mnoho dříve zjištěných nedostatků ve svých testovacích případech, budoucí ad-hoc kontroly mohou vyžadovat jiný přístup.

 

Osvědčené postupy pro testování ad hoc

2-2.png

Existují určité postupy, které by měly testovací týmy při ad-hoc testování uplatňovat, včetně:

 

1. Zaměřte se na potenciální nedostatky v testování

 

Ačkoli ad-hoc testování zahrnuje mnohem méně plánování než jiné typy, tým se stále snaží řešit nedostatky v zajištění kvality. Pokud mají ad-hoc testeři podezření na konkrétní problémy s testovacími případy týmu, měli by je při provádění kontroly upřednostnit.

 

2. Zvažte software pro automatizaci

 

Strategie automatizace, jako je hyperautomatizace, mohou společnostem, které chtějí provádět ad-hoc testy, nabídnout mnoho výhod.

Úspěch závisí na několika klíčových faktorech, včetně nástroje, který si podnik zvolí, a také na obecné složitosti jeho ad hoc testů.

 

3. Dělejte si komplexní poznámky

 

Nedostatek dokumentace při ad-hoc testování slouží především k dalšímu zefektivnění tohoto procesu – týmu by mohlo prospět, kdyby si v průběhu práce dělal neformální poznámky. Díky tomu mají testeři k dispozici přehledný záznam o těchto kontrolách a jejich výsledcích, což zvyšuje jejich celkovou opakovatelnost.

 

4. Pokračujte ve zdokonalování testů

 

Ad-hoc testeři průběžně zdokonalují svůj přístup, aby zohlednili změny v testovací strategii týmu. Například při zkoumání novějších verzí softwaru společnosti mohou tyto kontroly upravit v reakci na novější a rozsáhlejší formální testovací případy.

 

7 chyb a nástrah při implementaci

Testy ad hoc

přínosy testování uživatelského rozhraní

Stejně jako u každého procesu testování existuje celá řada možných chyb, kterých by se měl tým vyvarovat, jako např.:

 

1. Nezkušení testeři

 

Aby bylo možné udržet očekávané tempo ad-hoc testování, musí vedoucí týmu přidělovat testery na základě jejich znalostí a dovedností. Zatímco mnoho forem testování mohou zvládnout pracovníci zajišťující kvalitu na základní úrovni, ad-hoc kontroly vyžadují členy týmu, kteří plně rozumí softwaru; nejlépe se zkušenostmi s prováděním těchto testů.

 

2. Nesoustředěné kontroly

 

Ad-hoc testování může výrazně zlepšit pokrytí testů díky rychlejšímu tempu – tým nemusí před každou kontrolou a po ní vyplňovat rozsáhlou dokumentaci.

Ad-hoc testeři se však musí stále soustředit na určité oblasti; mohou se například rozhodnout upřednostnit určité komponenty s vyšším rizikem selhání.

 

3. Žádné plánování

 

Vyhnout se jakémukoli plánu může omezit účinnost ad-hoc testování. Navzdory nestrukturované povaze tohoto přístupu je důležité, aby měl tým před zahájením zhruba představu o tom, které testy se budou provádět.

Čas je během tohoto procesu omezený a znalost postupu může přinést mnoho výhod.

 

4. Příliš strukturovaný

 

Na opačném konci spektra se tento přístup obvykle opírá o nedostatečné plánování, protože to testerům pomáhá aktivně podvracet testovací případy a nacházet skryté chyby.

Testování ad hoc je také známé jako náhodné testování a vnucování struktury může těmto kontrolám zabránit v nalezení chyb.

 

5. Žádné dlouhodobé změny

 

Účelem ad-hoc testování je identifikovat případné nedostatky v testovacích případech týmu; zkoumá se tím celková strategie týmu stejně jako samotný software.

To však znamená, že ad-hoc testy jsou obecně účinné pouze tehdy, pokud tým tyto informace používá k postupnému zdokonalování svých formálních kontrol.

 

6. Nekompatibilní datové sady

 

Prakticky každá forma testování vyžaduje určitou formu simulovaných dat, aby bylo možné posoudit, jak aplikace reaguje; některé nástroje umožňují testerům automaticky naplnit program maketami dat.

To však nemusí odrážet způsob, jakým by uživatel se softwarem pracoval – ad hoc kontroly vyžadují soubory dat, se kterými se software pravděpodobně setká.

 

7. Informační sila

 

Je nezbytné, aby testeři a vývojáři spolu neustále komunikovali, a to i v případě, že nejsou součástí procesu ad-hoc testování.

To pomáhá všem pochopit, které testy byly provedeny – ukazuje další kroky, které je třeba provést, a zároveň zabraňuje tomu, aby testeři zbytečně opakovali některé kontroly.

 

Typy výstupů z testů Ad-Hoc

testování softwaru automatizace post

Kontroly ad hoc přinášejí několik různých výstupů, včetně:

 

1. Výsledky testů

 

Jednotlivé testy poskytují různé výsledky, které jsou specifické pro konkrétní součást a přístup – ten může mít mnoho podob.

Obvykle je na testerovi, aby určil, zda výsledky představují chybu, ačkoli nedostatek dokumentace ztěžuje porovnání s jeho očekáváním. Pokud tým zjistí nějaké problémy, předá tyto výsledky vývojářům.

 

2. Zkušební protokoly

 

Samotný software používá složitý systém interních protokolů, které monitorují uživatelské vstupy a upozorňují na řadu problémů se soubory nebo databázemi, které se mohou objevit.

To může ukazovat na vnitřní chybu, včetně konkrétní části softwaru, která problém způsobuje. Díky těmto informacím mohou ad-hoc testeři a vývojáři mnohem snadněji řešit objevené problémy.

 

3. Chybová hlášení

 

Cílem mnoha ad-hoc kontrol je prolomit software a odhalit jeho limity, což znamená, že chybová hlášení aplikace jsou jedním z nejčastějších výstupů těchto testů.

Záměrným vyvoláním chybových hlášení může tým předvést, co vidí běžný koncový uživatel, kdykoli má neočekávaná akce, kterou provede, nepříznivý vliv na fungování programu.

 

Příklady testování Ad-Hoc

 

Zde jsou tři scénáře ad-hoc testování, které ukazují, jak je může tým implementovat pro různé aplikace:

 

1. Webová aplikace e-commerce

 

Pokud chce společnost testovat webovou aplikaci založenou na elektronickém obchodě, může použít ad-hoc testování – konkrétně testování na opicích – aby zjistila, jak dobře platforma zvládá neočekávané interakce s uživateli.

Testující se mohou snažit dotáhnout každou funkci až na hranici jejích možností, například přidávat do košíku položky v nereálném množství nebo se pokoušet nakupovat produkty, které nejsou skladem. Nejsou omezeni testovacími případy týmu a existuje jen málo limitů, které kontroly mohou provádět; testeři se dokonce mohou pokusit dokončit nákupy pomocí zastaralých adres URL.

 

2. Aplikace pro stolní počítače

 

Ad-hoc testeři mohou tyto techniky implementovat také pro desktopové aplikace s možným zaměřením na různé počítače a na to, jak dobře se na nich program přizpůsobí.

Členové týmu mohou tyto kontroly provádět opakovaně, aby zjistili, jak změna nastavení hardwaru nebo softwaru ovlivňuje celkový výkon aplikace. Určitá grafická karta může mít například potíže s vykreslováním rozhraní.

Případně by tito testeři mohli jednoduše zadat programu nemožné vstupy a zjistit, jak reaguje, například zda dokáže správně zobrazit chybové hlášení, které koncovému uživateli problém dostatečně vysvětlí.

 

3. Mobilní aplikace

 

Jedním ze způsobů, jak mohou ad-hoc testeři prověřit mobilní aplikaci, je otestovat její bezpečnostní protokoly – mohou se například pokusit získat přímý přístup k vývojovým nástrojům aplikace.

Tým se může pokusit zjistit, zda je schopen provádět neautorizované akce nalezením běžných mezer a exploitů; o usnadnění této činnosti může požádat zejména zaměstnance se zkušenostmi v oblasti zabezpečení aplikací.

To může zahrnovat i párové testování s vývojáři, protože ti mají přehled o návrhu aplikace a mohou testerům umožnit, aby software rozbili a ukázali, kde přesně je jeho zabezpečení nedostatečné.

 

IS YOUR COMPANY IN NEED OF

ENTERPRISE LEVEL

TASK-AGNOSTIC SOFTWARE AUTOMATION?

Typy zjištěných chyb a závad

prostřednictvím testování Ad-Hoc

zaptest-runtime-error.png

Ad-hoc kontroly mohou odhalit mnoho problémů s programem, jako například:

 

1. Chyby funkčnosti

 

Použití ad-hoc testování k prověření základních funkcí aplikace může odhalit závažné chyby, které ovlivňují způsob, jakým s ní mohou pracovat koncoví uživatelé.

Například opičí testování možností platby na webu elektronického obchodu ukáže podmínky, které brání transakci.

 

2. Problémy s výkonem

 

Tito testeři mohou cíleně pracovat na vytvoření výkonnostních problémů v programu – například naplněním databáze různými spamovými vstupy.

To by se mohlo projevit výrazným zpožděním nebo dokonce celkovou nestabilitou softwaru, což by pravděpodobně vedlo k pádu (potenciálně celého systému).

 

3. Problémy s použitelností

 

Tyto kontroly by také mohly upozornit na chyby v rozhraní a celkovém uživatelském prostředí. Například uživatelské rozhraní mobilní aplikace se může v jiném operačním systému nebo rozlišení obrazovky zobrazovat jinak. Špatné rozhraní může vést k tomu, že uživatelé budou mít problémy s ovládáním této aplikace.

 

4. Bezpečnostní nedostatky

 

Náhodná povaha testování ad-hoc umožňuje pokrýt celou řadu běžných i vzácných bezpečnostních problémů; tester může pomocí těchto kontrol najít zadní vrátka v administraci programu.

Případně se při kontrole může ukázat, že software nemá žádné šifrování dat.

 

Běžné metriky testování ad-hoc

testování zátěže

Ad-hoc testování využívá k usnadnění svých výsledků různé metriky, včetně:

 

1. Účinnost detekce závad

 

Tato metrika sleduje, jak efektivní je proces testování při hledání chyb v jednotlivých formách testování, včetně testování ad-hoc. Účinnost detekce defektů je procento odhalených defektů dělené celkovým počtem problémů – ukazuje, jak jsou testy účinné.

 

2. Míra pokrytí testů

 

Pomocnou funkcí ad-hoc testování je zvýšení pokrytí kontrolou komponent způsobem, který testovací případy nezohledňují. To znamená, že se testeři budou také snažit radikálně zvýšit pokrytí testů u každé kontroly, jak jen to bude možné.

 

3. Celková doba trvání testu

 

Ad-hoc testování je mnohem rychlejší než jiné procesy zajištění kvality – a je nezbytné, aby testeři pracovali na udržení této výhody. Metriky doby trvání testů ukazují členům týmu, jak mohou ušetřit čas a ještě více umocnit výhody ad-hoc strategií.

 

4. Míra nehodovosti

 

Cílem těchto testů je často rozbít software a způsobit pád nebo závažnou chybu – díky tomu mohou jít nad rámec typických testovacích strategií a najít neočekávané problémy. Za tímto účelem může být užitečné vědět, jak často software padá a co je příčinou těchto problémů.

 

5 nejlepších nástrojů pro testování ad hoc

nejlepší bezplatné a podnikové nástroje pro testování softwaru + automatizace RPA

Pro ad-hoc testování v oblasti testování softwaru je k dispozici mnoho bezplatných i placených testovacích nástrojů – pět nejlepších je následujících:

 

1. ZAPTEST Free & Enterprise Edition

článek o testování šedé skříňky - nástroje, přístupy, srovnání s testováním bílé a černé skříňky, nástroje pro šedou skříňku zdarma a pro podniky.

ZAPTEST je komplexní program pro testování softwaru, který poskytuje silnou úroveň funkcí testování + RPA jak ve své bezplatné, tak podnikové verzi.

Tato sada pro automatizaci softwaru + RPA Suite umožňuje kompletní testování na různých desktopových a mobilních platformách; technologie 1SCRIPT softwaru také umožňuje uživatelům snadno provádět stejné kontroly opakovaně. Kromě toho nástroj využívá nejmodernější počítačové vidění, díky němuž může ZAPTEST provádět ad-hoc testy z pohledu člověka.

 

2. BrowserStack

 

BrowserStack je cloudová platforma, která umožňuje testování na více než 3 000 různých strojích a navíc umožňuje automatizovat skripty Selenium. Ačkoli poskytuje silné pokrytí softwarových projektů, nejlépe funguje v prohlížečích a mobilních aplikacích.

Součástí testovacích řešení BrowserStack je také bezplatná zkušební verze se 100 minutami automatického testování – i když její využití může být omezené.

Přestože cloudový přístup může být užitečný, má také negativní vliv na dobu odezvy platformy.

 

3. LambdaTest

 

LambdaTest podobně využívá cloudovou technologii a klade velký důraz na testování v prohlížeči, což může omezit jeho účinnost pro jiné aplikace – i když se stále dobře hodí pro programy pro iOS a Android. Jedná se o užitečnou platformu, která je integrovatelná s mnoha dalšími službami testovacího hostingu.

Někteří uživatelé však mají smíšené reakce na ceny aplikace v různých dostupných variantách bez zkušebního provozu, což může omezit dostupnost pro menší organizace.

 

4. TestRail

 

TestRail je obecně poměrně přizpůsobivý díky tomu, že běží výhradně v prohlížeči, a navzdory silnému zaměření na efektivní testovací případy se může pochlubit i přímou ad-hoc funkčností. Analýza, kterou poskytuje po každém testu, může také pomoci týmům, které se aktivně vyhýbají vytváření vlastní nezávislé dokumentace, a zároveň jim umožňuje ověřit jejich proces testování.

Větší sady však mohou mít potíže s formátem založeným na prohlížeči, což může značně omezit časovou úsporu ad-hoc testování.

 

5. Zephyr

 

Zephyr je platforma pro správu testů od společnosti SmartBear, která pomáhá týmům zajišťujícím kvalitu zlepšit přehled o testování a zároveň se dobře integruje s dalším softwarem pro sledování chyb.

Tato funkce je však omezena na určité aplikace, z nichž Zephyr nejvíce využívá Confluence a Jira – nemusí to být nejefektivnější řešení pro každou firmu. Pod značkou Zephyr je k dispozici několik škálovatelných programů za různé ceny.

 

Kontrolní seznam, tipy a triky pro testování Ad-Hoc

Kontrolní seznam pro testování softwaru

Zde jsou další tipy pro týmy, na které by měly brát ohled při provádění ad-hoc testování:

 

1. Stanovení priorit citlivých složek

 

Některé funkce nebo součásti jsou přirozeně více ohroženy chybami než jiné, zejména pokud jsou důležité pro celkovou funkci programu.

Každý přístup k testování by měl identifikovat části aplikace, kterým by bylo vhodné věnovat důkladnější pozornost. To je užitečné zejména tehdy, když je celkový čas na testování omezený.

 

2. Prozkoumejte různé testovací nástroje

 

Nástroj, který organizace implementuje pro usnadnění svých testů, může ovlivnit pokrytí a spolehlivost těchto kontrol.

Při ad-hoc testování se vyplatí prozkoumat co nejvíce programů a najít ty, které vyhovují jeho uživatelskému aspektu. Software využívající technologii počítačového vidění, jako je ZAPTEST, může k ad-hoc testům přistupovat pomocí strategie podobné lidské.

 

3. Přijměte ad-hoc myšlení

 

Ad-hoc testování nabízí obrovskou volnost v celé fázi zajištění kvality, ale tým se mu musí věnovat, aby získal klíčové výhody této strategie.

Například ad-hoc testeři by měli upustit od všech svých obvyklých dokumentů nad rámec základních poznámek a musí software prověřit ze zcela nové perspektivy.

 

4. Důvěřujte testovacím instinktům

 

Zkušenosti s ad-hoc testováním nebo obecnými kontrolami softwaru mohou pomoci upozornit na běžná místa selhání, což testerům pomůže určit, jak odhalit chyby všech typů.

Je důležité, aby testeři důvěřovali svým instinktům a vždy tyto znalosti využili ve svůj prospěch – mohou intuitivně odhadnout, které ad-hoc kontroly by byly nejpřínosnější.

 

5. Úplné zaznamenání objevených chyb

 

Ačkoli ad-hoc testování nemá žádnou formální dokumentaci a většinou se spoléhá na neformální poznámky, stále je důležité, aby tým dokázal identifikovat a sdělit příčinu softwarové chyby.

Musí zaznamenat všechny informace, které test poskytne a které jsou důležité pro vývojáře, například případné příčiny těchto problémů.

 

6. Vždy berte ohled na uživatele

 

Každá forma testování se snaží do určité míry přizpůsobit celkovému zážitku uživatele – a ad-hoc testování není výjimkou. Ačkoli se často zabývá hlouběji vnitřním fungováním aplikace a dokonce i jejím interním kódem, měli by se ad-hoc testeři pokusit tento software prolomit způsobem, který by uživatelé teoreticky mohli.

 

7. Neustálé zlepšování procesu

 

Testovací týmy by měly zdokonalit svůj přístup k ad-hoc testování mezi několika iteracemi téhož softwaru a mezi jednotlivými projekty.

Mohou shromažďovat zpětnou vazbu od vývojářů, aby zjistili, jak dobře jejich ad-hoc testy pomohly ve fázi zajištění kvality a zda se jim podařilo výrazně zvýšit pokrytí testů.

 

Závěr

Ad-hoc testování může organizacím všeho druhu pomoci ověřit jejich strategii testování softwaru, ale způsob, jakým tuto techniku implementují, může být významným faktorem její účinnosti.

Klíčem k získání co největšího přínosu z ad-hoc kontrol je vyváženost různých typů testování – zejména proto, že tato forma testování má doplnit ostatní a vyplnit strategickou mezeru.

S aplikací, jako je ZAPTEST, mohou týmy provádět ad-hoc testy s větší jistotou nebo flexibilitou, zejména pokud implementují automatizaci. Bez ohledu na konkrétní přístup týmu může jeho odhodlání k ad-hoc testování způsobit revoluci v celém programu nebo projektu.

Download post as PDF

Alex Zap Chernyak

Alex Zap Chernyak

Founder and CEO of ZAPTEST, with 20 years of experience in Software Automation for Testing + RPA processes, and application development. Read Alex Zap Chernyak's full executive profile on Forbes.

Get PDF-file of this post