Role: Test analytik
Hlavní zodpovědností test analytika je příprava podkladů pro testery.
Role Sets: Role
Relationships
Main Description

V rámci plánování testů je test analytik po ruce test manažerovi při specifikaci dílčích záležitostí. Pomáhá test manažerovi například se specifikací typů testů, nástrojů a testovacích technik, reviduje odhady a pomáhá při identifikaci vazeb mezi podklady pro testování a pracovními produkty testování.

Jakmile je plán testování odsouhlasen, je zodpovědný za veškerou přípravu testování. Nejdříve analyzuje a reviduje všechny dostupné podklady pro testování. Pokud v nich narazí na nějaké defekty či nesrovnalosti, oznámí to autorům podkladů a ti ihned podklady opraví a upřesní. Na základě podkladů pro testování a odsouhlaseného plánu testování pokračuje identifikací testovacích podmínek, návrhem testovacích případů, vytvářením testovacích skriptů, přípravou testovacích dat a organizací a priorititizací testovacích případů. Při vytváření testovacích skriptů může být zapotřebí některé skripty automatizovat. K tomu je potřeba osob technického zaměření se znalostí skriptování a nástrojů pro automatizaci testů. Test analytik bez technického zaměření může požádat o pomoc s automatizací skriptů vývojáře, nebo povolat přímo na automatizaci specializované technické testery. Cílem test analytika je pochopit, jak má správně systém, resp. komponenta fungovat a efektivně jej celý pokrýt jednotlivými testovacími případy a skripty. Na cestě k optimálnímu pokrytí systému testy může využít různé techniky pro návrh testů, jejichž kategorizace je uvedena v úloze definice přístupu k testování.

Po kompletaci přípravy testování se proces testování posouvá do fáze provádění testů, která je v režii testerů. Test analytik ale může významně přispět při provádění testů mimo připravené skripty, protože má přehled o tom, co je připravenými testy pokryto a jaké oblasti dosud pokryty nejsou. Může testerům snadno poradit, na jaké oblasti se dále zaměřit, nebo otestovat tyto oblasti sám.

 V průběhu celého procesu testování test analytik spolu s testery podává test manažerovi průběžná hlášení o stavu testování, což jsou v případě test analytika hlášení o stavu přípravy podkladů pro testery. Při přípravě jednotlivých podkladů pro testery musí dbát na pečlivé provázání jednotlivých podkladů mezi sebou a provázání podkladů na požadavky, aby se následně daly vysledovat metriky zaměřené na pokrytí.

Po dokončení provádění testů spolu s testery pomáhá test manažerovi se shromažďováním metrik z nástrojů pro řízení testování a s posouzením celkového pokrytí a průběhu testů. Na závěr testovacích aktivit může být pověřen předáním pracovních produktů testování relevantním osobám a týmům, archivací pracovních produktů a může být přizván jako důležitý zdroj informací na retrospektivní mítinky.

Staffing
Skills

Dle [RUP, 2010; Testování softwaru] by měl mít test analytik následující schopnosti a dovednosti:

·       předchozí zkušenost s testováním, technikami testování a nástroji pro podporu testování,

·         analytické schopnosti a schopnost diagnostikovat a řešit problémy,

·         být pečlivý, vytrvalý a zvídavý a věnovat pozornost i detailům,

·         znalost výhod a nevýhod automatizovaných testů, aby se mohl rozhodnout, které testy budou vytvořeny manuálně a které automatizovaně (vytvořením automatizovaných testů může následně pověřit specializované technické testery),

·         znalost obvyklých softwarových chyb a selhání,

·         znalost programovacího jazyka, ve kterém jsou psány testované aplikace (výhodou),

·         znalost testované aplikace, systému nebo oblasti, která je předmětem testování (velkou výhodou).

Požadavky na specifické dovednosti se liší i dle typu testů, které se budou provádět. Pokud jsou požadovány kromě klasických funkcionálních testů také například testy výkonnosti a bezpečnosti, je zapotřebí osob, kteří mají s daným typem testů zkušenosti.

Assignment Approaches

V malých testovacích týmech se zkušenými členy týmu je typicky role test analytika přidělována více osobám společně s rolí testera. Pokud jsou vytvářeny automatizované skripty, je dobrým zvykem, že techničtí testeři skripty nejen vytváří, ale následně i spouští a zaznamenávají jejich výsledky.  Častým přístupem k přiřazení rolí v menších týmech je také přidělení role test analytika navíc k roli analytika. Nevýhodou však zde je, že podklady pro testování vytvářené analytikem neprojdou revizí od nezávislé osoby a defekty zanesené v analytických dokumentech se tak snadno zapracují i do testů. Naopak výhodou je, že analytik zná dokonale danou oblast a nemusí ji při přípravě testování explicitně studovat. Jak již bylo zmíněno u role test manažer, častým modelem u malých týmů je také kumulace rolí test manažer a test analytik. [RUP, 2010]