V ideální případě testování konkrétního softwaru provádí celý tým pracovníků. Na této stránce se chci zaměřit na popis všech rolí členů tohoto týmu. Jak jsem uvedl na začátku, všechny tyto níže uvedené role by měli být v ideální případě k dispozici během přípravy a samotného procesu testování aplikace. Jako u všech ostatních oborů i zde platí, že tým musí být poskládaný z profesionálů, kteří chtějí vytvořit kvalitní software bez chyb. Týmový duch nesmí chybět ani zde.
Tester
Náplň práce:
Obsah práce testera se může trochu lišit v návaznosti na velikost firmy pro kterou pracuje. Zpravidla však tester především provádí manuální testy podle předem připravených testovacích scénářů od test analytika. K tomu je ale nutné aby se důkladně seznámil s aplikací. Vlastnosti aplikace mu buď představí analytik nebo si je nastuduje z funkční specifikace. Během exekuce manuálních testů tester zaznamenává nalezené chyby do bug trackingu. Tester musí umět odhadnout kolik času mu zabere exekuce testů z daného scénáře nebo jen jeho částí.
Vlastnosti:
Správný tester se vyznačuje trochu jiným myšlením, něž jedinci v jeho okolí. Neustále si klade otázky typu „a co se stane, když..“. Žádné tvrzení pro něj není pravdivé do té doby, dokud si jej sám neověří několika praktickými případy. Při testování je vynalézavý a neustále jej napadají nové a nové cesty jak lze validně dosáhnout(či naopak nedosáhnout) cílového stavu v procesu.
Další důležitou vlastností, kterou by měl disponovat každý tester je komunikativnost. Je důležité správně formulovat dotazy na analytiky, tak aby tester pochopil jak se má aplikace chovat. Neméně důležité je také srozumitelný popis nalezené chyby který následně využívají vývojáři i analytici. Pečlivost a důslednost je potřeba i na této pozici.
Testeři většinou nebývají moc oblíbení u developerů. Je to dáno podstatou jejich činnosti, kdy hlavně upozorňují na chyby ostatních. Proto je velmi důležité, aby si tester dával pozor na to jakým způsobem sděluje nalezení defektu v aplikaci. Lze tak podstatně vylepšit atmosféru na pracovišti.
Testerem se může stát praktický každý(nezáleží na kvalifikaci) a v každém věku. Důležité však je aby měl to správné myšlení, které ho vždy dovede k nalezení i té nejskrytější chyby. Jelikož je toto hledání někdy dlouhé, je nutné, aby ho tato práce také bavila.
Test analytik
Náplň práce:
Test analytik jak je již z názvu patrné, se zabývá především tvorbou test analýzy. Na základě vstupů od analytiků se snaží pochopit aplikaci která se teprve bude vyvíjet. Po načerpání maximálního množství dostupných informací začne připravovat dokumenty pro testování. Do tvorby test analýzy patří příprava test case, test suit a test skript. Při tvorbě test case zjišťuje test analytik nedostatky v analýze. Během psaní scénářů zaznamenává požadavky na testovací data. Po vytvoření všech test case pro danou aplikaci je schopen stanovit detailnější plán testů pro další fázi testování softwaru. Často také test analytik vypomáhá při exekuci testů.
Vlastnosti:
Člověk, který by chtěl být test analytikem, by měl disponovat především analytickým myšlením. Pečlivost a vytrvalost je nezbytná.
Test manager
Náplň práce:
Test manager je se svým týmem v podstatě jakýsi mezičlánek mezi analýzou a vývojem. Neustále musí komunikovat s vedoucím vývoje a vedoucím analýzy. Průběh testování a všech procesů pak musí reportovat svému nadřízenému, což není nikdo jiný než vedoucí projektu.
Test manager musí na začátku každého projektu posbírat všechny dostupné informace od analytiků. Z těchto informací následně vytvoří testovací strategii pro daný projekt. Testovací strategie(Test plán) musí obsahovat vydefinované požadavky na testování, plán testování, harmonogram, etapy testů, typy testů, metriky hodnocení testů, vstupy a výstupy z testování. Když je hotova testovací strategie, musí test manager zajistit potřebný HW, SW a především tým testerů. Tyto zdroje zpravidla posvětí a odsouhlasí manažer projektu. Po vytvoření týmu následuje pro test managera „oddechová“ část procesu testování (resp. přípravy testování) vyvíjené aplikace. V této fázi je potřeba vytvořit test analýzu. Na základě dříve získaných a nastudovaných dokumentů musí vzniknout test case, test suity a testovací scénáře. Hlavními pomocníky při tvorbě test analýzy by měly být test analytici. Po dokončení test analýzy přichází v ideálním případě samotná exekuce připravených testů. Testy jsou vyhodnocovány na základě připravených metrik. Po dokončení testování a odevzdání produktu zadavateli nezbývá, než si vyhodnotit proběhlý proces testování na projektu a napříč všemi týmy se poučit z chyb, tak aby k nim na dalším projektu nedocházelo.
Vlastnosti:
Dobrý test manager by měl určitě disponovat vlastnostmi jako je plánování a delegování práce. Své podřízené musí často kontrolovat a nebát se učinit neoblíbená rozhodnutí. Na druhou stranu musí umět motivovat testery k dobré práci a hlavně důkladné. Test manager by měl mít alespoň základní znalosti nějakého programovacího jazyku (objektově orientovaného), jelikož často komunikuje se členy vývojového týmu.