Sdílet prostřednictvím


Správa nespolehlivého testování

Služby Azure DevOps

Produktivita pro vývojáře spoléhá na schopnost testů najít skutečné problémy s kódem ve vývoji nebo aktualizací včas a spolehlivě. Flaky testy představují překážku pro nalezení skutečných problémů, protože selhání často nesouvisí s otestovanými změnami. Flaky test je test, který poskytuje různé výsledky, jako je úspěšné nebo neúspěšné, i když ve zdrojovém kódu nebo spouštěcím prostředí nedošlo k žádným změnám. Flaky testy také ovlivňují kvalitu expedovaného kódu.

Poznámka:

Tato funkce je dostupná jenom v Azure DevOps Services. Nové funkce se obvykle zavádějí nejprve v cloudové službě a pak jsou k dispozici místně v příští hlavní verzi nebo aktualizaci Azure DevOps Serveru. Další informace najdete v tématu Časová osa funkcí Azure DevOps.

Cílem, který přináší záležnou správu testů v produktu, je snížit příčinu bolesti vývojářů pomocí flaky testů a vyhovět celému pracovnímu postupu. Flaky test management poskytuje následující výhody.

  • Detekce – automatická detekce neschváleného testu s opětovným spuštěním nebo rozšiřitelností pro připojení vlastní metody detekce

  • Správa flakiness – jakmile je test označený jako flaky, jsou data k dispozici pro všechny kanály pro tuto větev.

  • Sestava o flaky testech – Možnost zvolit, jestli chcete zabránit selháním sestavení způsobeným flaky testy, nebo použít flaky značku pouze pro řešení potíží

  • Řešení – ruční vytvoření chyby nebo ruční označení a označení testu jako flaky na základě analýzy

  • Zavřete smyčku – Resetování flaky testu v důsledku řešení chyb / ručního vstupu

Flaky životní cyklus

Povolení fádní správy testů

Pokud chcete nakonfigurovat přehlednou správu testů, zvolte Nastavení projektu a v části Kanály vyberte Správa testů.

Posuňte tlačítko Zapnuto/Vypnuto na Zapnuto.

Snímek obrazovky s povolenou správou testů, povolenou detekcí testů Flaky a detekcí systému

Výchozím nastavením pro všechny projekty je použít pro řešení potíží podrobné testy.

Detekce flaky testu

Flaky test management podporuje systém a vlastní detekci.

  • Detekce systému: Detekce v produktu používá testovací data opětovného spuštění. Detekce probíhá prostřednictvím úlohy VSTest, která znovu spouští schopnost neúspěšných testů, nebo opakování fáze v kanálu. V projektu můžete vybrat konkrétní kanály, pro které chcete detekovat rozlehlé testy.

    Poznámka:

    Jakmile je test označený jako záležený, jsou data dostupná pro všechny kanály pro danou větev, aby vám pomohla s řešením potíží v každém kanálu.

  • Vlastní detekce: Můžete integrovat vlastní mechanismus detekce se službou Azure Pipelines a používat funkci vytváření sestav. Při vlastní detekci je potřeba aktualizovat metadata výsledků testů pro přehledné testy. Podrobnosti najdete v tématu Výsledky testů, Metadata výsledků – Aktualizace rozhraní REST API.

Snímek obrazovky se správou testů, povolenou detekcí testů Flaky a vlastní detekcí

Flaky test options

Možnosti flaky testu určují, jak jsou k dispozici flaky testy v sestavách testů a také možnosti řešení, jak je popsáno v následujících částech.

Flaky testovací správa a generování sestav

Na stránce Správa testů v části Možnosti flaky testu můžete nastavit možnosti, jak jsou v sestavě souhrnu testů zahrnuty podrobné testy. Testovací data pro úspěšné i neúspěšné testy jsou k dispozici ve výsledcích testu. Značka Flaky vám pomůže identifikovat rozlehlé testy. Ve výchozím nastavení se do souhrnu testů zahrnou flaky testy. Pokud ale chcete mít jistotu, že neúspěšná testovací selhání neproběhne, můžete se rozhodnout, že je nezahrnete do souhrnu testu a potlačíte selhání testu. Tato možnost zajišťuje, že se z procenta úspěšného průchodu odeberou testy (úspěšné i neúspěšné) a zobrazí se v části Testy, které nejsou hlášeny, jak je znázorněno na následujícím snímku obrazovky.

Přehledné vytváření sestav

Poznámka:

Sestava souhrnu testů se aktualizuje jenom pro úlohu visual studio Test a publikuje úlohu Výsledky testu. Možná budete muset přidat vlastní skript, který v jiných scénářích potlačí nechutné selhání testu.

Testy označené jako flaky

Pokud zvolíte Flaky (nebo UnFlaky) v závislosti na tom, jestli je test už označený jako flaky, můžete označit nebo zrušit označení testu jako flaky.)

Mark flaky Test

Pokud je test v kanálu označený jako foukaný nebo nefoukaný, v aktuálním kanálu se neprovedou žádné změny. Pouze při budoucích spuštěních tohoto testu se vyhodnocuje změněné záležné nastavení. Testy označené jako flaky mají v uživatelském rozhraní značku Označeno flaky .

Potvrzení jasného testu

Nápověda a podpora