Každý task se před sloučením automaticky testuje — úzkými unit testy i širšími end-to-end testy, které prověřují běžící aplikaci. Pohled Testing ukazuje testy projektu nezávisle na jednotlivých tascích.

Testování

Testy v detailu tasku

V detailu tasku ukazuje krok Test výsledek unit testů projektu (kolik prošlo, kolik selhalo a výstup selhání) a krok E2E výsledek end-to-end scénářů — simulovaných akcí uživatele ve skutečně běžící aplikaci. Pokud Test nebo E2E selže, krok Fix dostane podrobnosti selhání, pokusí se problém opravit a testy se spustí znovu; to se může několikrát automaticky opakovat. Když testy neprojdou ani po povoleném počtu pokusů, task přejde do stavu failed a podrobnosti selhání u něj zůstanou.

Pohled Testing a jeho záložky

Ve výchozím stavu má pohled Testing tři vnitřní záložky: History — Dashboard, History — Modules a Unit Tests. Další záložky — Setup, Dashboard, Verdicts, E2E Plans, Scenarios, Integration Tests, Release Tests a E2E Cockpit — existují, ale jsou skryté, dokud je nezapnete v přizpůsobení navigace.

Pohled Testing
Pohled Testing s výchozími záložkami historie testů.

Záložka Unit Tests

Záložka Unit Tests obsahuje tlačítko Run unit tests, součty posledního běhu (passed, failed, skipped), tabulku Run History (datum, passed, failed, total, doba trvání) a vpravo jednotlivé testy vybraného běhu s filtry jako Passed a Failed. Kliknutím na běh v Run History zobrazíte jeho testy; filtr Failed ukáže chybu každého neúspěšného testu. Běh, který se nedokončil, je označen jako crashed s uvedeným důvodem a tlačítkem Ask AI to fix.

Záložka Unit Tests s historií běhů a neúspěšnými testy
Záložka Unit Tests: historie běhů a neúspěšné testy vybraného běhu.

Verdikty kroku Verify

Po testech krok Verify znovu ověří každé akceptační kritérium tasku a zaznamená jeden ze tří verdiktů:

  • passed — kontrola proběhla a výsledek odpovídá očekávání.
  • failed — kontrola proběhla a výsledek neodpovídá; výstup uvádí, co se spustilo, co se očekávalo a co se vrátilo.
  • unverifiable — kontrolu nešlo vůbec spustit (například vyžaduje běžící instanci, která není k dispozici). Task kvůli tomu nikdy neselže; položka je uvedena jako čekající na ruční ověření.

Sestavení & Start/Stop

Spusťte sestavení (build) svého projektu, poté spusťte nebo zastavte jeho běžící instanci na vlastním vyhrazeném portu — nezávisle na izolovaných instancích, které si pipeline vytváří pro E2E testování v rámci tasku.

Živý stav a výstup terminálu

Na první pohled uvidíte, jestli vaše instance běží, sestavuje se nebo je zastavená, a živě sledujete její terminálový/konzolový výstup — užitečné pro potvrzení, že build proběhl úspěšně, nebo pro diagnostiku, proč ne.

Zastavení běžící testovací sady

Dlouhotrvající běh unit testů můžete kdykoli zastavit přímo z pohledu Testing, aniž byste museli čekat na jeho dokončení. Pokud AITM server restartujete uprostřed běžícího testu, běh se bezpečně přeruší a při dalším startu se nezůstane "zaseknutý" v běžícím stavu — server tento stav rozpozná a vyčistí ho.

Společný rozpočet CPU/RAM pro testy

Unit testy a E2E testy sdílí jeden celkový rozpočet CPU a paměti, který se automaticky přizpůsobuje velikosti serveru, na kterém AITM běží. Testy se spouští sekvenčně tak, aby jejich souběh nepřetížil server — to chrání před pádem způsobeným vyčerpáním zdrojů, když je spuštěno více testovacích běhů najednou.

Historie E2E verdiktů

Každý end-to-end testovací běh zaznamenaný u tohoto projektu se uchovává v záložce Verdicts (ve výchozím stavu skrytá), spolu s verdiktem (pass, feature bug, environment error atd.) a časovou osou, kterou můžete procházet zpět a sledovat, jak se vyvíjelo zdraví testů v čase.

Rozbalovací nabídka bugů

Rozbalovací nabídka bugů v horní liště zobrazuje maximálně 10 nejnovějších bugů, aby zůstala rychlá a přehledná i u projektů s dlouhou historií. Odkaz Otevřít sekci Bugy je v ní zobrazený vždy — i když je seznam posledních bugů prázdný — takže se z nabídky nikdy nedostanete do slepé uličky a k úplnému seznamu bugů se dostanete jedním klikem bez ohledu na to, kolik nedávných položek existuje.

Tipy

  • Když projekt aktivně netestujete, nechte jeho vlastní instanci zastavenou — uvolní se tak port pro izolované E2E instance pipeline.
  • Před opětovným spuštěním celé testovací sady zkontrolujte historii E2E verdiktů — minulá chyba prostředí může vysvětlovat selhání, které ve skutečnosti není chybou v kódu.