Zarządzanie niestabilnymi testami
Azure DevOps Services
Produktywność dla deweloperów polega na możliwości testowania w celu znalezienia rzeczywistych problemów z kodem w ramach programowania lub aktualizacji w odpowiednim czasie i niezawodności. Niestabilne testy stanowią barierę w znalezieniu rzeczywistych problemów, ponieważ błędy często nie odnoszą się do testowanych zmian. Niestabilny test to test, który zapewnia różne wyniki, takie jak powodzenie lub niepowodzenie, nawet jeśli nie ma żadnych zmian w kodzie źródłowym lub środowisku wykonywania. Niestabilne testy wpływają również na jakość dostarczonego kodu.
Uwaga
Ta funkcja jest dostępna tylko w usługach Azure DevOps Services. Zazwyczaj nowe funkcje są najpierw wprowadzane w usłudze w chmurze, a następnie udostępniane lokalnie w następnej wersji głównej lub aktualizacji serwera Azure DevOps Server. Aby uzyskać więcej informacji, zobacz Oś czasu funkcji usługi Azure DevOps.
Celem wprowadzenia niestabilnego zarządzania testami w produkcie jest zmniejszenie przyczyny bólu dewelopera przez niestabilne testy i zaspokoić cały przepływ pracy. Zarządzanie testami flaky zapewnia następujące korzyści.
Wykrywanie — automatyczne wykrywanie niestabilnego testu z ponownym uruchomieniem lub rozszerzalnością w celu podłączenia własnej niestandardowej metody wykrywania
Zarządzanie flakiness — gdy test jest oznaczony jako niestabilny, dane są dostępne dla wszystkich potoków dla tej gałęzi
Raport dotyczący niestabilnych testów — możliwość wyboru, czy chcesz zapobiec niepowodzeniom kompilacji spowodowanym przez nieudane testy , lub użyć tagu flaky tylko do rozwiązywania problemów
Rozwiązanie — ręczne tworzenie usterek lub ręczne oznaczanie i usuwanie znacznika testu jako niestabilnego na podstawie analizy
Zamknij pętlę — zresetuj test łuszczący się w wyniku rozwiązania błędów/ręcznego wprowadzania danych wejściowych
Włączanie niestabilnego zarządzania testami
Aby skonfigurować zarządzanie testami, wybierz pozycję Ustawienia projektu, a następnie wybierz pozycję Zarządzanie testami w sekcji Potoki .
Przesuń przycisk Wł./Wył.
Ustawieniem domyślnym dla wszystkich projektów jest użycie niestabilnych testów do rozwiązywania problemów.
Wykrywanie nietypowych testów
Zarządzanie testami flaky obsługuje wykrywanie systemowe i niestandardowe.
Wykrywanie systemu: wykrywanie w produkcie łuszczącym się używa danych ponownego uruchamiania testów. Wykrywanie odbywa się za pośrednictwem ponownego uruchamiania zadań VSTest dotyczących możliwości testów, które zakończyły się niepowodzeniem, lub ponawiania próby etapu w potoku. W projekcie możesz wybrać określone potoki, dla których chcesz wykryć niestabilne testy.
Uwaga
Gdy test zostanie oznaczony jako niestabilny, dane są dostępne dla wszystkich potoków dla tej gałęzi, aby ułatwić rozwiązywanie problemów w każdym potoku.
Wykrywanie niestandardowe: możesz zintegrować własny mechanizm wykrywania flaky z usługą Azure Pipelines i korzystać z możliwości raportowania. W przypadku wykrywania niestandardowego należy zaktualizować metadane wyników testów pod kątem niestabilnych testów. Aby uzyskać szczegółowe informacje, zobacz Wyniki testów, Dane meta wyników — aktualizowanie interfejsu API REST.
Flaky opcje testu
Opcje testu flaky określają, jak niestabilne testy są dostępne w raportowaniu testów, a także możliwości rozwiązywania, zgodnie z opisem w poniższych sekcjach.
Flaky test zarządzania i raportowania
Na stronie Zarządzanie testami w obszarze Flaky test options (Opcje testu flaky) można ustawić opcje dotyczące tego, jak niestabilne testy są zawarte w raporcie Podsumowanie testu. Dane testowe z powodzeniem i niepowodzeniem są dostępne w wynikach testu testowego. Tag Flaky pomaga zidentyfikować niestabilne testy. Domyślnie w podsumowaniu testu są uwzględniane niestabilne testy. Jeśli jednak chcesz upewnić się, że niepowodzeń testu nie powiedzie się potok, możesz nie uwzględnić ich w podsumowaniu testu i pominąć niepowodzenie testu. Ta opcja gwarantuje, że nieudane testy (zarówno z powodzeniem, jak i niepowodzeniem) są usuwane z wartości procentowej przebiegu i wyświetlane w sekcji Testy niezgłoszone, jak pokazano na poniższym zrzucie ekranu.
Uwaga
Raport podsumowania testów jest aktualizowany tylko dla zadania testowego programu Visual Studio i zadania Publikuj wyniki testu. Może być konieczne dodanie niestandardowego skryptu w celu pomijania niepowodzeń testu flaky dla innych scenariuszy.
Testy oznaczone jako niestabilne
Możesz oznaczyć lub usunąć oznaczenie testu jako niestabilnego na podstawie analizy lub kontekstu, wybierając pozycję Flaky (lub UnFlaky, w zależności od tego, czy test jest już oznaczony jako niestabilny).
Gdy test jest oznaczony jako niestabilny lub niezafakły w potoku, żadne zmiany nie są wprowadzane w bieżącym potoku. Tylko w przyszłych wykonaniach tego testu jest zmienione niestabilne ustawienie oceniane. Testy oznaczone jako niestabilne mają tag Oznaczona flaky w interfejsie użytkownika.
Pomoc i obsługa techniczna
- Zobacz naszą stronę rozwiązywania problemów
- Uzyskaj porady dotyczące rozwiązania Stack Overflow i uzyskaj pomoc techniczną za pośrednictwem społeczności deweloperów