Dopad testu na částečně namapovaná úložiště TFVC v TFS/Azure DevOps Services
Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019
Analýza dopadu testu (TIA) byla součástí úlohy VSTest počínaje verzí 2 úkolu. Tato funkce pomáhá urychlit cyklus DevOps tím, že pomáhá spouštět pouze relevantní testy sestavení. V podstatě skončíte se spouštěním testů, které jsou ovlivněny příchozími změnami, a ne celou sadou testů. Další informace o analýze dopadu testu najdete v tématu Zrychlení testování pomocí analýzy dopadu testu (TIA).
Kromě podpory GitHubu a Gitu v Azure DevOps podporuje TIA také TFVC. Tento článek popisuje známé omezení týkající se TIA v kanálech buildů a verzí založených na TFVC a alternativní řešení, jak toto omezení obejít.
Problém s částečně namapovanými úložišti TFVC
Způsob, jakým TIA funguje, spočívá ve shromažďování dat o souborech, na které se testovací metoda při prvním spuštění dotkne, označované také jako základní čára. Kolektor, který shromažďuje tato data, má viditelnost pouze vysílaného úložiště na počítači agenta. S kanály založenými na TFVC získáte možnost zařazení částečných úložišť. Představte si například úložiště, které má následující strukturu.
Teď v kanálu buildu nebo verze uvidíte dlaždici Získat zdroje v části Proces , jak je znázorněno v následujícím příkladu.
Vyberte Získat zdroje a v pravém okně se zobrazí možnosti, které částečně mapuje úložiště.
Pokud jste zapsli celé úložiště, jak je znázorněno v předchozím příkladu, TIA dál funguje správně, ale pokud ho započítáte částečně, jak je znázorněno v následujícím příkladu, TIA nenalezne ovlivněné testy.
Pokud je úložiště TFVC částečně zařazeno, TIA nenajde ovlivněné testy, protože kolektor dokáže shromažďovat změny pouze pro částečně zařazené úložiště v agentovi a nemá viditelnost celé cesty. Když dojde ke změně kódu ze serveru, poskytne celou cestu a odpovídající pokus s mapovanou cestou selže.
Alternativní řešení
Pokud chcete tento problém obejít, můžete částečné úložiště namapovat na úplnou strukturu kódu na serveru, aby úplná cesta k souborům v místním zařazení odpovídala úplné cestě k serveru. K tomu můžete zadat místní cestu , která odpovídá cestě k serveru, jak je znázorněno v následujícím příkladu.
Tím zajistíte, že cesta k serveru odpovídá cestě shromážděné kolektorem a ovlivněným testům jsou správně uvedeny.