Blog
22. januára 2019 Maroš Strmenský

Xray Test Management for Jira – komplexný nástroj pre testovací tím

Zákazník potreboval pre menší tím (30 testerov) nástroj, v ktorom by vedeli robiť manuálne testy, ale dôraz dával na automatizované testy a jednoduchú integráciu s CI systémami.

Zákazník, ktorý vyvíja softvér, nás oslovil s otázkou, aký nástroj by sme mu odporučili pre jeho testovací tím. Keďže zákazník už používal pre biznis požiadavky a vývoj Jira, tak sme sa sústredili na doplnky pre Atlassian.

Zákazník potreboval pre menší tím (30 testerov) nástroj, v ktorom by vedeli robiť manuálne testy, ale dôraz dával na automatizované testy a jednoduchú integráciu s CI systémami. Z portfólia dostupných nástrojov sme vybrali práve Xray pre jeho user friendly GUI, množstvo integrácií na testovacie frameworky, ako aj pre jeho širokú škálu nastavení.

Xray – stručný prehľad

Xray je plugin do Jira určený pre manažment testovacieho tímusprávu testovtestovacích plánov a evidenciu výsledkov testov. Xray je postavený na tom, že čo je možné a má zmysel evidovať ako JIRA úlohu, tak má vytvorený typ úlohy. To umožňuje mať pre dané úlohy vlastné nastavenia procesov, čo môže byť výhoda hlavne pri dizajne a plánovaní testov. V základnom nastavení Xray pracuje s nasledovnou sadou úloh:

  • Test Set – balík testov, ktoré spolu súvisia
  • Test – samostatný test
  • Pre-Condition  – podmienka, ktorá má byť splnená pred vykonaním testu
  • Test Plan – plán, ktorý definuje sadu testov, čo majú byť vykonané pre konkrétnu verziu
  • Test Execution – konkrétne vykonanie testov a evidencia výsledkov

Okrem týchto typov úloh sa dá v Xray pracovať s požiadavkami, ktorých implementáciu chceme testovať. Na základe prepojení úloh typu požiadavka s testami a testov s úlohami typu chyba (Bug) je možné vytvárať mapy pokrytia, kde je možné zobraziť, ktorý Bug/Test má dopad na akú požiadavku.

Xray sám o sebe obsahuje rôzne pohľady na vykonávanie testov. Tvorca Xray, spoločnosť Xpand IT, dodáva aj plugin Xporter, ktorý prináša možnosť reportov testov aj s možnosťou exportu reportov do formátov .xlsx, .docx, .pdf, .docm, .dotm, .rtf, .odt, .svg, .png. V prípade, že používate spolu s Jira plugin EazyBI (blog TU), Xray do tohto pluginu pridáva preddefinované dimenzie a merané hodnoty.

Začiatok práce s Xray-om

Skôr ako začneme vytvárať testy v Xray, je potrebné Xray nastaviť. Keďže Xray vie pracovať aj s napojením na požiadavky a úlohy s chybami, tak firma Xpand IT (tvorca aplikácie Xray) odporúča vybrať si z nasledovných nastavení projektov:

  1. Všetko v jednom projekte – v tomto režime sú požiadavky na systém vrátane implementačných úloh, testov a chýb v jednom projekte.
  2. Oddelený implementačný projekt od testovacieho projektu – tento režim zaraďuje veci implementačné: požiadavky, implementačné úlohy, chyby do „Implementačného projektu“ a úlohy súvisiace s testami: testy,  podmienky, test sety, test plány, vykonávanie testov do „Testovacieho projektu
  3. Špecializovaný projekt iba pre testy – v tomto móde existujú 3 projekty: Implementačný (požiadavky, implementačné úlohy), projekt s testami (Testy, Test sety a podmienky) a projekt na testovanie (Test plány, vykonávanie testov, chyby)
  4. Úplné oddelenie – oproti „Špecializovanému projektu iba pre testy“ tento mód oddeľuje aj evidenciu chýb do externého projektu
  5. Požiadavky v izolovanom systéme – toto nastavenie umožňuje napájať testy na požiadavky, ktoré sú evidované v iných systémoch ako napr.: Enterprise Architect a pod.

Po zvolení a nakonfigurovaní Xray a testovacieho projektu sa môžeme pustiť do fázy dizajnovania testov.

Dizajnovanie testov

Xray umožňuje evidovať dva typy testov a to manuálne a automatické. Tieto testy je možné spájať do testovacích setov, poprípade od verzie 3.0 už aj do testovacieho repozitára, kde je možné triediť testy do priečinkov. Testy resp. Testovacie sety je možné napojiť na požiadavky, kde potom priamo na stránke s požiadavkou je možné zobraziť stav pokrytia testami. Niekto možno ocení aj možnosť pridávania vstupných podmienok pre testy spolu s ich znovu-použitím pre iné testy.

Manuálne testy pozostávajú so zoznamu krokov, z ktorých každý sa skladá z popisu kroku, vstupných dát a očakávaného výsledku. Kroky je možné preusporiadavať, mazať a pridávať im prílohy. Výhodou je aj využitie wiki markup formátovania pre popis testu ale i popisu krokov, údajov a požadovaných výstupov.

Xray umožňuje evidovať aj automatické testy. Špeciálnou kategóriou, ktorej sa vývojár venuje, sú Cucumber testy, kde je priama podpora na písanie scenára v Jira s podporou zvýrazňovania kľúčových slov Gherkin jazyka. Tieto testy je možné neskôr exportovať do Cucumber feature súborov, ktoré je možné spustiť na testovacom prostredí.

Ostatné automatické testy je možné vytvárať v Jira za predpokladu, že poznáme identifikátor testu v konkrétnom jazyku, alebo jednoduchším spôsobom  – prvotným naimportovaním výsledkov testu do Jira. Xray potom každý ďalší import výsledkov daného testu prepojí s už existujúcim testom.

Plánovanie testov

Plánovanie sa robí vytváraním testovacích plánov prepojených s testami resp. testovacími setmi, ktoré sa majú otestovať v danom pláne. Od verzie 3.0 je pri použití repozitára s testami možné využiť plánovací pohľad. V ňom je možné pridávať testy z repozitára a takto upravovať plán testovania.

Vykonávanie testov

Na to aby sme mohli začať v Xray testovať, potrebujeme najprv vytvoriť úlohu Test Execution. Pokiaľ sme si testovanie dopredu naplánovali cez testovacie plány, vytvorenie takejto úlohy je možné priamo z testovacieho plánu. Automaticky sa do úlohy Test Execution nakopírujú aj referencie na testy zaradené do plánu. Pokiaľ sme neplánovali, alebo je potrebné urobiť testovanie mimo plánu, je možné túto úlohu vytvoriť priamo a pridať do nej požadované testy.

Samotné vykonávanie testov prebieha pri manuálnych testoch na špeciálnej obrazovke, ktorá sa zobrazí po kliknutí na tlačidlo spustenia testu z úlohy pre vykonávanie testov. Na tejto obrazovke sú zobrazené informácie o práve vykonávanom teste s popisom testu, všetkých vstupných podmienok a krokov daného testu. Tester má možnosť priamo z tejto obrazovky reportovať chyby, resp. po úspešnom vykonaní testu pokračovať ďalším testom priamo z tejto obrazovky.

Výsledky automatických testov je možné naimportovať priamo do úlohy Test Execution. Testy, ktoré sa nepodarilo spárovať s už existujúcimi testami, sa automaticky vytvoria a priradia k danému Test Execution.

Report výsledkov

Xray obsahuje niekoľko gadgetov do Jira, kde je možné sledovať vývoj testovania, ale obsahuje aj reporty súvisiace s testovaním, ako napr.: Mapu pokrytia testami, Pokrytie testami v čase, Report testovacích plánov, Report vykonávania testov a Report spúšťaných testov.

S čím Vám vieme pomôcť

Na začiatku je potrebné Xray nastaviť. Aby sme to vedeli spraviť, sú nevyhnutné nasledovné kroky:

  1. zozbieranie analýza požiadaviek na testovanie – aké projekty sa budú testovať, ako často, aké sú release cykly, aká je štruktúra testovacieho tímu a pod.
  2. identifikácia prístupov k testovaniu – každý typ projektu má svoje špecifiká a preto zvyčajne existuje viac typov prístupov
  3. unifikácia prístupov k testovaniu – kvôli zjednodušeniu správy Xray-u je dosť dôležité v tomto kroku zredukovať typy prístupov na minimálny počet

Na základe týchto krokov vieme nastaviť Jira a Xray tak, aby v čo najväčšej miere spĺňali požiadavky klienta.

Pomáhame klientom integrovať sa s CI systémami, kde je možné dosiahnuť reportovanie výsledkov automatických testov priamo do Jira po ukončení buildu na CI.

 

Maroš Strmenský

programátor/analytik

Podobné projekty