TestRail — Individuální nastavení pro projekt

Úvod

V mnoha projektech, na kterých jsem pracoval, lidé nepřizpůsobovali TestRail svým potřebám a spokojili se se standardními nastaveními. V tomto článku se proto pokusím popsat příklad individuálních nastavení, která vám mohou pomoci zvýšit efektivitu vaší práce. Pro příklad vezmeme projekt vývoje mobilní aplikace.

Malé upozornění. Tento článek neobsahuje popis základních funkcí TestRail (na to existuje mnoho návodů) ani prodejní vyjádření, která barevně popisují, proč byste měli zvolit právě tohoto dodavatele pro vytvoření repozitáře s testy.

Plán obhajoby (co bude realizováno)

  1. Obecné požadavky

    1. Případ by měl být schopen projít naprosto kýmkoliv

    2. Případy by měly udržovat aktuálnost co nejdéle

    3. Případy by měly co nejpečlivěji pokrývat funkčnost mobilní aplikace do té míry, jak to neodporuje prvním dvěma bodům

  2. Rozdělení na TestCase a TestScenario

  3. Rychlé vytváření TestRun různých typů

    1. Smoke

    2. Regress

    3. Impact testování atd.

  4. Optimalizace podpory případů

    1. Odmítnutí 'mrtvých' hardcoded screenshotů a přechod na 'movable data'

Požadavky

Pro úpravu polí budete potřebovat administrátorský přístup

Výběr typu projektu

Můžete zvolit tři typy projektu:

TestRail — Individuální nastavení pro projekt

Zvolíme typ výchozí. V něm budou současně dostupné všechny případy. Budeme používat inteligentní filtrování a dynamicky spravovat všechny případy najednou.

Přidání polí pro zobrazení seznamu testovacích případů

Přidáme pole pro zobrazení priority testovacích případů:

TestRail — Individuální nastavení pro projekt

Můžete také přidat další pole.

Nastavení polí a tagů testovacího případu

Otevřeme nabídku nastavení:

TestRail — Individuální nastavení pro projekt

Budeme potřebovat tato pole:

Pole 'Summary' (záhlaví testovacího případu)

TestRail — Individuální nastavení pro projekt

Toto pole již existuje, pouze systematizujeme jeho použití. Budeme rozdělovat případy na TestCase a TestScenario. Pro lepší čitelnost velkého seznamu případů je lepší se předem dohodnout na pravidlech psaní shrnutí.

TestScenario:

Příklad: TestScenario — Hlavní scénář použití mobilní aplikace

TestCase:

Příklad: MainScreen — Sekce přihlašování — Zadání přihlašovacího jména

Celkově vidíme v shrnutí případu klasické chápání: "co, kde, kdy". Také vizuálně oddělujeme vrcholové testovací scénáře a nízkoúrovňové testovací případy v nejvhodnějším formátu pro automatizaci.

Tag „StartScreen“ (obrazovka, z které začíná TestScenario, také mnoho testovacích případů může zasahovat do sousedních obrazovek)

K čemu může sloužit: odstraníme z textu testovacích případů typické kroky, které vedou uživatele na obrazovku aktuálního testovacího případu. (typické kroky pro vytvoření určité testovací situace) Všechny typické kroky pro všechny testovací případy budou napsány v jednom souboru. O něm podrobněji napíšu samostatně.

Vytváříme nové pole:

TestRail — Individuální nastavení pro projekt

Vyplňujeme komponenty nového pole:

TestRail — Individuální nastavení pro projekt

V tomto případě vytváříme pole pro výběr ze seznamu hodnot. Vkládáme hodnoty tohoto pole:

TestRail — Individuální nastavení pro projekt

Všimněte si, že id hodnot nezačíná od jedničky a není to v souvislé řadě. Proč to tak je? Je to proto, že pokud budeme mít zapsané testovací případy s uvedeným id,

TestRail — Individuální nastavení pro projekt

a poté budeme potřebovat vytvořit třetí obrazovku mezi dvěma existujícími,

TestRail — Individuální nastavení pro projekt

budeme muset přepsat id, a protože k němu už jsou přiřazeny tagy stávajících testovacích případů, jednoduše se odstraní. To bude velmi nepříjemné.

Tag „Screen“ (název obrazovky, kterou zasahuje TestCase)

K čemu může sloužit: jeden z ukotvení pro dopadové testování. Například, vývojáři udělali novou skvělou funkci. Musíme ji otestovat, ale k tomu musíme pochopit, co přesně tato funkce mohla ovlivnit. Obecně bychom mohli vycházet z paradigmat, že různé obrazovky (Activity) aplikace mají různé třídy a tím pádem tvoří různé komponenty aplikace. Samozřejmě v tomto případě je potřeba individuální přístup.

Příklad: home_screen, MapScreen, PayScreen atd.

TestRail — Individuální nastavení pro projekt

Pole „MovableData“ (odkaz na proxy DB s měnitelnými testovacími daty)

Dále se pokusíme vyřešit problém s udržováním aktuálnosti dat v testovacích případech:

  1. Odkazy na aktuální makety (to je mnohem lepší než dělat mrtvé screenshoty)

  2. Typické kroky do obrazovky s testovací situací

  3. SQL dotazy

  4. Odkazy na externí data a další údaje

Místo toho, abychom vkládali testovací data do každého testovacího případu, vytvoříme jeden externí soubor a na všechny testovací případy se na něj odkazujeme. Při aktualizaci těchto dat nebude nutné procházet všechny testovací případy a měnit je, stačí změnit tato data pouze na jednom místě. Pokud někdo nepřipravený otevře testovací případ, uvidí v jeho těle odkaz na soubor a upozornění, že je třeba se na něj podívat pro testovací data.

Všechna tato data zabalíme do jednoho externího souboru, který bude dostupný všem zájemcům na projektu. Například můžeme použít Google Sheet nebo Excel a v souboru nastavit hledání. Proč právě tito dodavatelé? Je to proto, že vycházíme z paradigmatu, že každý člověk v týmu by měl být schopen otevřít a projít testovací případ bez nutnosti předem instalovat různé nástroje.

Pro Google Sheet můžeme používat SQL dotazy. Příklad:

=dotaz(DATA!A1:M1146;"
SELECT C,D
WHERE
C obsahuje '"&HLEDAT!A2&"'")

Pro Excel můžeme nastavit pohodlné makra pro okamžité vyhledávání. (filtrování) Příklad na odkazu.

Myšlenka není nová a je popsána v první knize testera "Testování dot com". (autor Roman Savin) My pouze integrujeme do TestRail metodiky navržené Romanem Savinem. Za tímto účelem vytvoříme pole s odkazem na vytvořený soubor:

TestRail — Individuální nastavení pro projekt

vyplníme výchozí hodnotu odkazu, aby v každém novém testovacím případě byl už odkaz:

TestRail — Individuální nastavení pro projekt

Pokud se umístění externího souboru změní (předpokládáme jakýkoli faktor), je možné pohodlně upravit hned několik polí ve všech testovacích případech:

TestRail — Individuální nastavení pro projektTestRail — Individuální nastavení pro projekt

Pole "Popis" (popis nebo myšlenka testovacího případu, standardní pokyny)

K čemu to může být užitečné: Do tohoto textového pole umístíme stručný popis testovacího případu a standardní pokyny.

Příklad: Všechna testovací data (aktuální makety, používání nástrojů a další data) z tohoto testovacího případu jsou označena odkazy {…} a nacházejí se v souboru MovableData. Odkaz na MovableData je v příslušném poli nahoře.

TestRail — Individuální nastavení pro projekt

Tag „Komponenta“ (komponent mobilní aplikace)

Proč by mohl být použit: pro impaktní testování. Pokud je mobilní aplikace rozdělena na komponenty (které na sebe co nejméně vzájemně působí), pak je změnu v jednom komponentu možné (s určitými riziky) ověřit v rámci tohoto komponentu a tím se sníží důvody pro provádění obecných regresí všeho a všech. Pokud existují informace, že jeden komponent může ovlivnit jiný, sestaví se matice impaktního testování.

Příklad komponent: GooglePay, Objednávka, Uživatelé, Mapa, Autorizace atd.

TestRail — Individuální nastavení pro projekt

Tag „TAG“ (Další tagy pro filtrování)

Tagování testovacího případu štítky pro libovolné filtrování. 

Velmi užitečné pro: 

  1. rychlé sestavení TestRun pro různé typické úkoly: smoke, regres a atd.

  2. zda budou testy automatizovány nebo již jsou automatizovány

  3. jakékoliv další tagy

Příklad: Smoke, Automatizované, WhiteLabel, NaSmazání atd.

TestRail — Individuální nastavení pro projektTestRail — Individuální nastavení pro projekt

Nastavujeme pořadí zobrazení polí v testovacím případu

Vytvořili jsme mnoho nových polí, je čas je uspořádat do pohodlného pořadí:

TestRail — Individuální nastavení pro projekt

Vytvoření TestRunu

Nyní vytvoříme nový test run s aktuálními případy pro provedení smoke testování ve třech kliknutích:

TestRail — Individuální nastavení pro projekt

Další užitečné tipy

  1. Pokud je v TestRail více projektů, nezapomeňte vytvářet nová pole pouze pro Váš projekt, jinak budou kolegové z vedlejších týmů velmi překvapeni, když uvidí nová neobvyklá pole. Mohou nastat místní omdlení.

TestRail — Individuální nastavení pro projekt

2. Případy s velkým množstvím polí se snadněji kopírují z podobné skupiny než se vytvářejí nové:

TestRail — Individuální nastavení pro projekt

3. Lze používat účty společně. Například: jeden administrátorský, několik uživatelských.

Závěr

Výše uvedené příklady byly implementovány v několika projektech a prokázaly svou účinnost. Doufám, že pomohou zlepšit Vaše porozumění této nástroji a pomohou vytvářet efektivní a pohodlné „testovací úložiště“. Budu velmi vděčný, pokud v komentářích popíšete svou zkušenost s používáním TestRail a užitečné tipy.

Odkazy:

Web dodavatele TestRail

Kniha: „Testování .COM“ (autor Roman Savin)

Děkuji mnohokrát za pozornost!

Zdroj: habr.com

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster