Když kód roste, vyvažte testy dřív, než vás začnou brzdit
Když pracujete na více feature větvích současně, verzování kódu přestává být mechanickou rutinou a stává se hlavním zdrojem chyb. Nejčastější problém není v samotném nástroji, ale v tom, jak větve vznikají a jak zařídit malou kuchyni dlouho žijí. Čím déle větev existuje, tím více se vzdaluje od hlavní vývojové linie a tím větší je riziko konfliktů při slučování. Základní pravidlo zní: větve by měly být krátké, zaměřené na jednu konkrétní funkci a měly by se aktualizovat z hlavní větve každý den, ne až těsně před dokončením.
Dalším praktickým krokem je revize stávajících testů. Najděte testy, které trvají déle než několik sekund, a zjistěte, zda to není způsobeno tím, že testují příliš mnoho scénářů naráz. Rozdělte je na menší, nezávislé testy. Pokud máte test, který pokrývá celý řetězec od databáze po UI, zeptejte se, zda je takový test opravdu nezbytný, nebo zda stačí otestovat rozhraní mezi jednotlivými vrstvami zvlášť. Někdy pomůže napsat malý skript, který změří dobu běhu každého testu, a na základě toho nastavit pravidla: testy, které běží déle než 200 ms, musí být označeny jako integrační a spouštěny odděleně.
Typickou chybou bývá testování pouze šťastné cesty. Ověřte také, jak se API chová při neplatných vstupech, chybějících parametrech nebo neautorizovaném přístupu. Vytvořte si v rámci sbírky samostatné požadavky pro tyto negativní scénáře. U každého z nich zkontrolujte, že API vrací správný stavový kód, například 400 nebo 401. Tím odhalíte nedostatky dřív, než se dostanou do produkce. Nezapomínejte ani na testování limitů, jako je maximální délka řetězce nebo počet položek v jednom dotazu.
Nezapomínejte ani na monitorování. Sledování výkonu, počtu připojení, využití paměti nebo délky transakcí vám pomůže odhalit problémy dřív, než se projeví na uživatelích. Základní monitorování si můžete nastavit jednoduše pomocí dotazů do systémových tabulek nebo grafů v nástrojích, které používáte. Důležité je si definovat, co je pro vás kritické, a na to se zaměřit. Častou chybou je monitorovat všechno, ale nakonec nic nevyhodnocovat — pak je takové sledování spíše přítěží.
Dalším bodem je indexace. Správně navržené indexy urychlí čtení, ale každý index navíc zpomaluje zápis. Při návrhu podpory proto myslete na to, které dotazy se budou opakovat nejčastěji, a podle toho indexy vytvořte. Není nutné indexovat každý sloupec, ale měli byste se vyhnout situaci, kdy se po nasazení ukáže, že hlavní dotaz běží příliš pomalu. K tomu pomůže i logování pomalých dotazů, které by mělo být zapnuté minimálně v testovacím prostředí. Často se na to zapomíná a problém se objeví až při ostrém provozu.
Nezapomínejte ani na čistotu commitů. Každý commit by měl obsahovat jednu logickou změnu, mít jasnou zprávu a měl by být samostatně revertovatelný. Když do jednoho commitu smícháte opravu chyby, novou funkci a změnu formátování, znemožníte tím pozdější hledání příčiny problému a ztížíte i code review. Více branchů se dá efektivně spravovat jen tehdy, když historie větví je čitelná a každý krok lze snadno vysvětlit.
První požadavek vytvoříte snadno: zvolte metodu (GET, POST, PUT, DELETE), zadejte URL a odešlete. Tady ale většina začátečníků dělá zbytečnou chybu – zapomenou na záložku Authorization. Pokud API vyžaduje token, bez něj dostanete 401. V Postmanu nastavte typ autorizace (např. Bearer Token nebo Basic Auth) a token vložte do příslušného pole. Pozor na to, že tokeny často expirují. Proto si do proměnných uložte aktuální hodnotu a při testech ji aktualizujte.
Jak číst odpověď a co s ní dělat dál Po odeslání požadavku se podívejte na stavový kód, který API vrátilo. Kód 200 znamená úspěch, ale neříká nic o tom, jestli data odpovídají očekávání. V záložce Response si prohlédněte tělo odpovědi a porovnejte ho s dokumentací. Často se stává, že server vrátí prázdné pole, i když by měl obsahovat záznamy. V takovém případě zkontrolujte parametry dotazu, hlavně ty, které filtrují nebo stránkují výsledky. Pokud máte podezření na chybu na straně serveru, využijte konzoli Postmana, If you beloved this article and you would like to obtain extra data about Byt v paneláku kindly pay a visit to our website. která zobrazí podrobnosti o síťovém provozu.
Nakonec nezapomeňte, že vyvážení testů není statický stav, ale kontinuální proces. Každý sprint by měl obsahovat čas nábytek na míru údržbu testů, nejen na přidávání nových. Pokud zjistíte, že integrační testy tvoří více než polovinu všech testů a build trvá přes deset minut, je to signál, že je třeba přesunout část testů na nižší úroveň. Naopak pokud máte jen jednotkové testy a žádné integrační, pravděpodobně vám unikají chyby v komunikaci mezi moduly. Cílem je, aby testy byly rychlé, spolehlivé a dávaly smysl — a to vyžaduje neustálou pozornost.
등록된 댓글이 없습니다.