Co se změní, když retrospektivu postavíte na strukturované zpětné vazbě
Nakonec si osvojte zvyk psát testy průběžně, ne až na konci. Čím déle testy odkládáte, tím těžší je je dopsat a tím menší mají hodnotu. Začněte malým testem pro první funkci, kterou napíšete, a postupně přidávejte další. Uvidíte, že po pár dnech se psaní testů stane přirozenou součástí vaší práce.
Jak na to: časový limit a jasné výstupy Klíčové je ohraničit délku retrospektivy – ideálně 30 až 45 minut. Rozdělte si čas na tři části: sběr podnětů (10 minut), diskusi a výběr priorit (15–20 minut), plán konkrétních kroků (10 minut). Každá část musí skončit hmatatelným výsledkem. Na konci by měl mít tým seznam maximálně tří akčních bodů, u každého jasného vlastníka a termín. Bez toho se retrospektiva stane jen povídáním, které nikam nevede. Typická chyba: snažit se vyřešit všechny problémy najednou. Místo toho vyberte jedno téma, které má největší dopad, a tomu věnujte pozornost.
Správné použití atributů a Assertů NUnit nabízí atributy jako [SetUp] a [TearDown] pro inicializaci a úklid prostředí. Využívejte je, ale nezneužívejte. Pokud každý test potřebuje jinou konfiguraci, raději vytvořte separátní testovací třídy. Dále se naučte používat Assert.That s constraint syntaxí, která je čitelnější než klasické Assert.AreEqual. Například Assert.That(výsledek, Is.EqualTo(5)) je nejen přehlednější, ale také poskytuje lepší chybové hlášení, úprava Interiéru když test selže. Pro porovnávání čísel s tolerancí použijte Is.EqualTo(0.1).Within(0.01) – tím se vyhnete nepříjemným problémům s plovoucí desetinnou čárkou.
Důležité je také myslet na rychlost. Pokud celá sada běží déle než deset minut, lidé ji přestanou spouštět. Rozdělte testy do dvou skupin: rychlé, které pouštíte při každém commitu, a pomalé, které běží v rámci nočního běhu. Rychlé testy by měly běžet v řádu minut, ne desítek. Pak je také snazší najít chybu, protože víte, že souvisí s poslední změnou.
Při psaní testů se vyhněte dvěma typickým chybám. Za prvé, nesnažte se pokrýt sto procent řádků kódu. Číslo samo o sobě neznamená kvalitu. Za druhé, nepište testy, které testují samy sebe – tedy takové, které jen opakují implementaci. Místo toho se zaměřte na chování: co se má stát, když přijde neplatný vstup, když dojde k výjimce, když je databáze prázdná. To jsou věci, které vám dají skutečnou ochranu, když něco rozbijete.
Co dělat, když tým nevidí smysl? In the event you cherished this short article in addition to you would want to get guidance concerning kompletní návod i implore you to go to our web site. Začněte s jednou krátkou retrospektivou zaměřenou na jednu konkrétní událost – třeba dokončení sprintu nebo nasazení nové funkce. Ukažte, jak rychle lze získat užitečné podněty. Po dvou až třech opakováních si tým zvykne a začne vnímat přínos. Důležité je také důsledně plnit domluvené akční kroky. Pokud na další schůzce nezkontrolujete, co se skutečně udělalo, důvěra v celý proces rychle klesne. Proto si vždy na začátku retrospektivy projděte minulé úkoly.
Poslední rada: pravidelně spouštějte celou testovací sadu, ideálně po každé změně kódu. Použijte nástroj pro měření pokrytí, abyste zjistili, které části kódu nejsou testovány. Ale nesnažte se dosáhnout stoprocentního pokrytí za každou cenu. Mnohem důležitější je, aby testy testovaly správné věci a byly udržovatelné. Když narazíte na chybu, nejdřív napište test, který ji reprodukuje, a teprve potom opravujte kód. Tímto postupem nejenže opravíte chybu, ale také zabráníte jejímu návratu v budoucnu.
Začněte u jednoho malého projektu, ne u celé firmy. Vyberte službu, která není kritická pro zákazníky, ale kde cítíte bolest – třeba dlouhé čekání na nasazení nebo ruční konfiguraci prostředí. Zautomatizujte jediný rekonstrukce koupelny krok za krokem, který opakujete nejčastěji. Může to být sestavení aplikace, spuštění testů nebo příprava konfigurace. K tomu použijte skript, který spouštíte lokálně, a postupně ho přesuňte do sdíleného běhového prostředí. Důležité je, aby výsledek byl stejný, ať ho spustíte kdekoli. Jinak získáte „na mně to funguje" a žádnou skutečnou automatizaci.
Nejčastější chybou, kterou u začátečníků i pokročilých vidím, je použití jednoho velkého testovacího případu, který ověřuje několik aspektů najednou. Místo toho rozdělte testy na malé, jednoúčelové metody. Pokud test selže, okamžitě víte, která část kódu je problémová. Nazvěte testy podle toho, co ověřují – třeba VratíNuluKdyžJeVstupPrázdný. Takový název je samovysvětlující a usnadňuje orientaci v testovací sadě. Vyhněte se obecným názvům typu Test1 nebo KontrolaFunkce.
Až budete mít první projekt stabilní, rozšiřte postup na další týmy. Ale nedělejte to předpisem. Sdílejte zkušenosti, ukažte, co vám ušetřilo čas, a nechte ostatní, ať si vyberou vlastní tempo. DevOps se šíří nejlépe tím, že lidé vidí výsledek – ne tím, že dostanou příkaz. Pokud narazíte na odpor, nesnažte se ho překonat silou. Najděte si jednoho spojence, který má podobný problém, a vyřešte ho společně. Jeden úspěšný příklad vydá za stovky prezentací.