Uruchamianie testów automatycznych z planu testów polecenia
Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019
Automatyzowanie przypadków testowych w planach testów i uruchamianie ich bezpośrednio z planów testów platformy Azure. Testy automatyczne zapewniają następujące korzyści:
- Przyjazny dla użytkownika proces testerów, którzy mogą nie być dobrze zorientowani w uruchamianiu testów w przepływach pracy kompilacji lub wydania.
- Elastyczność uruchamiania wybranych testów na żądanie, a nie zaplanowanego testowania w przepływach pracy kompilacji lub wydania, w których są uruchamiane wszystkie testy spełniające kryteria filtrowania.
- Możliwość ponownego uruchomienia kilku testów, które zakończyły się niepowodzeniem z powodu problemów z infrastrukturą testową, lub masz nową kompilację zawierającą poprawki dla testów, które zakończyły się niepowodzeniem.
Wymagania wstępne
- Dostęp do projektu: upewnij się, że został dodany do projektu.
- Poziomy dostępu: upewnij się, że masz co najmniej dostęp podstawowy lub wyższy.
- Aby uzyskać więcej informacji, zobacz Ręczne testowanie dostępu i uprawnień.
- Musisz również mieć następujące elementy.
- Plan testu zawierający testy automatyczne skojarzone z metodami testów automatycznych przy użyciu programu Visual Studio 2017 lub Visual Studio 2015 lub starszego.
- Potok kompilacji, który generuje kompilacje zawierające pliki binarne testów.
- Aplikacja do testowania. Aplikację można wdrożyć w ramach przepływu pracy kompilacji i wydania, a także używać jej do testowania na żądanie.
- Uprawnienia do tworzenia wydań i zarządzania nimi, edytowania środowiska wydania i zarządzania wdrożeniem. Aby uzyskać więcej informacji, zobacz Uprawnienia wydania.
Konfigurowanie środowiska
Na stronie Plany testów wybierz plan testu, otwórz menu skrótów, a następnie wybierz pozycję Ustawienia planu testu.
W oknie dialogowym Ustawienia planu testu wybierz potok kompilacji, który generuje kompilacje zawierające pliki binarne testów. Następnie możesz wybrać określony numer kompilacji do przetestowania lub zezwolić systemowi na automatyczne użycie najnowszej kompilacji podczas uruchamiania testów.
Potrzebujesz potoku wydania utworzonego na podstawie szablonu Uruchamianie testów automatycznych z poziomu szablonu Menedżera testów, aby uruchamiać testy z planów testów w planach testów platformy Azure. Jeśli masz istniejący potok wydania utworzony przy użyciu tego szablonu, wybierz go, a następnie wybierz istniejący etap w potoku wydania na potrzeby wykonania testu. W przeciwnym razie wybierz pozycję Utwórz nowy w oknie dialogowym, aby utworzyć nowy potok wydania zawierający pojedynczy etap z już dodanym zadaniem testowym programu Visual Studio.
Jak mogę przekazać parametry do kodu testowego z potoku kompilacji lub wydania?
Przypisz znaczące nazwy do potoku wydania i etapu zgodnie z potrzebami.
Jeśli program Visual Studio jest już zainstalowany na komputerze agenta, pomiń ten krok. Jeśli nie, dodaj zadanie Instalator platformy testowej programu Visual Studio do definicji potoku.
Dodaj zadanie Test programu Visual Studio do potoku wydania i skonfiguruj je w następujący sposób:
Sprawdź, czy wybrano wersję 2 zadania testowego programu Visual Studio. Numer wersji jest wyświetlany na liście rozwijanej panelu ustawień zadania.
Sprawdź, czy dla opcji Wybierz testy jest ustawiona wartość Przebieg testu. Co to ustawienie oznacza?
Dla ustawienia Wersja platformy testowej wybierz pozycję Zainstalowane przez Instalatora narzędzi.
Jeśli masz testy interfejsu użytkownika uruchamiane w przeglądarkach fizycznych lub grubych klientach, upewnij się, że agent ma być uruchomiony jako interaktywny proces z włączonym automatycznym logowaniem. Przed kolejką kompilacji lub wydania należy skonfigurować agenta do interakcyjnego uruchamiania. Pole wyboru Test mix zawiera testy interfejsu użytkownika nie konfiguruje agenta w trybie interaktywnym automatycznie — używane tylko jako przypomnienie w celu odpowiedniego skonfigurowania agenta w celu uniknięcia błędów.
Jeśli uruchamiasz testy interfejsu użytkownika w przeglądarce bez głowy, konfiguracja interaktywnego procesu nie jest wymagana.
Wybierz sposób aprowizowania platformy testowej oraz wersję programu Visual Studio lub lokalizację platformy testowej zainstalowanej na maszynach testowych.
Jeśli testy wymagają parametrów wejściowych, takich jak adresy URL aplikacji lub parametry połączenia bazy danych, wybierz odpowiedni plik ustawień z artefaktów kompilacji. W potoku kompilacji można użyć zadań Publikowanie artefaktów kompilacji, aby opublikować plik ustawień w lokalizacji upuszczania, jeśli ten plik nie jest uwzględniony w artefaktach. W poniższym przykładzie adres URL aplikacji jest uwidoczniony w pliku ustawień uruchamiania i jest zastępowany, aby ustawić go na adres URL przejściowy przy użyciu ustawienia Przesłonięć parametry przebiegu testu.
Aby uzyskać informacje o ustawieniach opcji zadania testowego programu Visual Studio, zobacz Zadanie testowe programu Visual Studio.
Wybierz element zadania agenta i sprawdź, czy kolejka wdrażania jest ustawiona na maszyny, na których chcesz uruchomić testy. Jeśli testy wymagają specjalnych maszyn z puli agentów, możesz dodać wymagania wybrane w czasie wykonywania.
Może być możliwe zminimalizowanie czasu testowania przez dystrybucję testów między wieloma agentami przez ustawienie równoległości na wiele wykonań i określenie liczby agentów.
Uwaga
Jeśli uruchamiasz testy interfejsu użytkownika, takie jak CodeUI lub Selenium w przeglądarkach fizycznych, takich jak IE, Firefox lub Chrome, agent na maszynach musi być uruchomiony w trybie interaktywnym, a nie jako usługa. Więcej szczegółów.
Na stronie Potok potoku wydania sprawdź, czy potok kompilacji zawierający pliki binarne testów łączy się z tym potokiem wydania jako źródłem artefaktu.
Zapisz potok wydania.
Jeśli w kroku 2 tego przykładu wybrano pozycję Utwórz nowy w oknie dialogowym Ustawienia planu testowania, wróć do strony przeglądarki zawierającej ustawienia planu testu. W oknie dialogowym Ustawienia planu testowania wybierz potok wydania i zapisany etap.
Uruchamianie testów automatycznych
W portalu internetowym Planów testów otwórz plan testu i wybierz zestaw testów zawierający testy automatyczne.
Wybierz testy, które chcesz uruchomić, otwórz menu Uruchom, a następnie wybierz pozycję Uruchom test.
Pliki binarne testów dla tych testów muszą być dostępne w artefaktach kompilacji generowanych przez potok kompilacji.
Wybierz przycisk OK , aby rozpocząć proces testowania. System sprawdza, czy wybrane są tylko testy automatyczne (wszystkie testy ręczne są ignorowane), weryfikuje etap, aby upewnić się, że zadanie testowe programu Visual Studio jest obecne i ma prawidłowe ustawienia, sprawdza uprawnienia użytkownika do utworzenia wydania dla wybranego potoku wydania, tworzy przebieg testowy, a następnie wyzwala utworzenie wydania do wybranego etapu.
Wybierz pozycję Wyświetl przebieg testu, aby wyświetlić postęp testu i przeanalizować testy, które zakończyły się niepowodzeniem. Wyniki testów zawierają odpowiednie informacje dotyczące debugowania testów, takich jak komunikat o błędzie, ślad stosu, dzienniki konsoli i załączniki.
Po zakończeniu wykonywania testu na stronie Uruchomienia planów testów platformy Azure są wyświetlane wyniki testu. Na stronie Podsumowanie przebiegu zostanie wyświetlone omówienie przebiegu.
Istnieje link do wydania używanego do uruchamiania testów, co ułatwia znalezienie wydania, które uruchomiło testy, jeśli chcesz wrócić później i przeanalizować wyniki. Użyj również tego linku, jeśli chcesz otworzyć wydanie, aby wyświetlić dzienniki wydania.
Uwaga
Ręczne dołączanie plików nie jest obsługiwane w przypadku wyników testów automatycznych.
Strona Wyniki testu zawiera listę wyników dla każdego testu w przebiegu testu. Wybierz test, aby wyświetlić informacje o debugowaniu testów, takich jak komunikat o błędzie, ślad stosu, dzienniki konsoli i załączniki.
Otwórz stronę Plany testów i wybierz plan testu, aby zobaczyć stan testów, jeśli testy zostaną zaktualizowane po zakończeniu wykonywania testu. Wybierz test, aby wyświetlić ostatnie wyniki testu.
Często zadawane pytania
Zobacz następujące często zadawane pytania dotyczące planów testów platformy Azure.
.: Jakie uprawnienia muszę uruchomić testy automatyczne z planów testów platformy Azure?
1: Musisz być współautorem projektu lub mieć następujące uprawnienia:
- Tworzenie wydań
- Zarządzanie wydaniami
- Edytowanie etapu wydania
- Zarządzanie wdrożeniem
Aby uzyskać więcej informacji, zobacz Uprawnienia wydania.
.: Czy mogę zastąpić kompilację lub zestaw etapów na poziomie planu testu dla określonego wystąpienia przebiegu testu?
1: Tak, możesz to zrobić za pomocą polecenia Uruchom z opcjami . Otwórz menu skrótów dla zestawu testów w lewej kolumnie i wybierz pozycję Uruchom z opcjami.
Wprowadź następujące wartości w oknie dialogowym Uruchom z opcjami, a następnie wybierz przycisk OK:
- Typ testu i moduł uruchamiający: wybierz pozycję Testy automatyczne przy użyciu etapu wydania.
- Kompilacja: wybierz kompilację zawierającą pliki binarne testów. Wyniki testu są skojarzone z tą kompilacją.
- Potok wydania: wybierz potok z listy potoków wydania, które mogą korzystać z wybranego artefaktu kompilacji.
- Etap wydania: wybierz nazwę etapu skonfigurowanego w potoku wydania.
.: Dlaczego warto uruchamiać testy przy użyciu etapów wydania?
Elementy: Usługa Azure Pipelines oferuje atrakcyjny przepływ pracy orkiestracji umożliwiający uzyskanie testowych plików binarnych jako artefaktów i uruchamianie testów. Ten przepływ pracy udostępnia te same pojęcia, które są używane w zaplanowanym przepływie pracy testowania, co oznacza, że użytkownicy uruchamiający testy w zaplanowanym przepływie pracy ułatwiają dostosowanie; na przykład przez sklonowanie istniejącego zaplanowanego potoku wydania testowania.
Kolejną główną korzyścią jest dostępność bogatego zestawu zadań w katalogu zadań, które umożliwiają wykonywanie szeregu działań przed i po uruchomieniu testów. Przykłady obejmują przygotowywanie i czyszczenie danych testowych, tworzenie i czyszczenie plików konfiguracji i nie tylko.
.: Jak działa wybranie opcji "Przebieg testu" w zadaniu testowym programu Visual Studio w wersji 2?
1: Podsystem zarządzania testami używa obiektu przebiegu testu do przekazania listy testów wybranych do wykonania. Zadanie testowe wyszukuje identyfikator przebiegu testu, wyodrębnia informacje o wykonaniu testu, takie jak nazwy kontenera i metod testowych, uruchamia testy, aktualizuje wyniki przebiegu testu i ustawia punkty testowe skojarzone z wynikami testu w przebiegu testu. Z perspektywy inspekcji zadanie programu Visual Studio udostępnia ślad z historycznych wydań i identyfikatorów przebiegów testów do testów przesłanych do wykonania testu na żądanie.
.: Czy agent powinien działać w trybie interaktywnym lub jako usługa?
O: Jeśli uruchamiasz testy interfejsu użytkownika, takie jak kodowane testy interfejsu użytkownika lub selenium , agent na maszynach testowych musi działać w trybie interaktywnym z włączonym autologem, a nie jako usługa, aby umożliwić agentowi uruchomienie przeglądarki internetowej. Jeśli używasz przeglądarki bezgłowej, takiej jak PhantomJS, agent może być uruchamiany jako usługa lub w trybie interaktywnym. Aby uzyskać więcej informacji, zobacz Kompilowanie i wydawanie agentów, Wdrażanie agenta w systemach Windows i Pule agentów.
.: Gdzie mogę znaleźć szczegółową dokumentację dotyczącą sposobu uruchamiania testów Selenium?
1: Zobacz Wprowadzenie do testowania Selenium.
.: Co się stanie, jeśli wybierzę wiele konfiguracji dla tego samego testu?
1: Obecnie przepływ pracy na żądanie nie uwzględnia konfiguracji.
.: Co zrobić, jeśli muszę pobrać pliki binarne produktu i przetestować pliki binarne z różnych kompilacji? A jeśli muszę uzyskać artefakty ze źródła, takiego jak Jenkins?
1: Bieżąca funkcja jest zoptymalizowana pod kątem kompilacji pojedynczego zespołu do testowania na żądanie przy użyciu przepływu pracy usługi Azure Pipelines. Oceniamy obsługę wydań z wieloma artefaktami, w tym artefaktów innych niż Azure Pipelines, takich jak Jenkins, na podstawie opinii użytkowników.
.: Mam już zaplanowany potok wydania testowania. Czy mogę użyć tego samego potoku, aby uruchomić test na żądanie, lub czy powinienem utworzyć nowy potok?
Odpowiedź: Zalecamy użycie oddzielnego potoku wydania i etapu do automatycznego testowania na żądanie z planów testów platformy Azure, ponieważ:
Możesz nie chcieć wdrożyć aplikacji za każdym razem, gdy chcesz uruchomić kilka testów na żądanie. Zaplanowane etapy testowania są zwykle konfigurowane w celu wdrożenia produktu, a następnie uruchamiania testów.
Nowe wersje są wyzwalane dla każdego uruchomienia na żądanie. Jeśli masz wielu testerów, którzy wykonują kilka przebiegów testów na żądanie każdego dnia, potok zaplanowanego wydania testowania może być przeciążony wydaniami dla tych przebiegów, co utrudnia znalezienie wersji wyzwalających potok zawierający zaplanowane testowanie i wdrażanie w środowisku produkcyjnym.
Możesz skonfigurować zadanie testowe programu Visual Studio przy użyciu identyfikatora przebiegu testu jako danych wejściowych, aby można było śledzić, co wyzwoliło wydanie. Aby uzyskać więcej informacji, zobacz How does selecting "Test run (for on-demand runs)" in the Visual Studio Test task work? (Jak wybrać opcję "Przebieg testu (w przypadku przebiegów na żądanie)" w pracy zadania testowego programu Visual Studio?.
.: Czy mogę wyzwolić te przebiegi i wyświetlić wyniki w programie Microsoft Test Manager?
Odpowiedź: Nie. Program Microsoft Test Manager nie obsługuje uruchamiania testów automatycznych w kompilacjach team foundation. Działa tylko w interfejsie internetowym dla usługi Azure Pipelines. Wszystkie nowe inwestycje w programowanie produktów do testowania ręcznego i zautomatyzowanego są w interfejsie internetowym. Nie zaplanowano dalszego programowania dla programu Microsoft Test Manager. Zobacz Wskazówki dotyczące użycia programu Microsoft Test Manager.
.: Mam wielu testerów w moim zespole. Czy mogą uruchamiać testy z różnych zestawów testów lub planów testów równolegle przy użyciu tego samego potoku wydania?
1: Mogą używać tego samego potoku wydania do wyzwalania wielu przebiegów testów równolegle, jeśli:
Pula agentów skojarzona z etapem ma wystarczającą ilość agentów do obsługi żądań równoległych. Jeśli wystarczająca liczba agentów nie jest dostępna, przebiegi mogą być nadal wyzwalane, ale kolejka wydań do przetwarzania do momentu udostępnienia agentów.
Masz wystarczające zadania, aby włączyć zadania równoległe. Aby uzyskać więcej informacji, zobacz Zadania równoległe w usłudze Azure Pipelines lub Zadania równoległe w programie TFS.
Testerzy nie uruchamiają tych samych testów równolegle. Może to spowodować zastąpienie wyników w zależności od kolejności wykonywania.
Aby włączyć wiele różnych przebiegów testów do wykonania równolegle, ustaw opcję wyzwalacza etapu usługi Azure Pipelines dla zachowania, gdy wiele wersji oczekuje na wdrożenie w następujący sposób:
Jeśli aplikacja obsługuje testy uruchomione równolegle z różnych źródeł, ustaw tę opcję na zezwalanie na wdrażanie wielu wersji w tym samym czasie.
Jeśli aplikacja nie obsługuje testów uruchomionych równolegle z różnych źródeł, ustaw tę opcję na zezwalanie tylko na jedno aktywne wdrożenie naraz.
.: Jak mogę przekazać parametry do kodu testowego z potoku kompilacji lub wydania?
1: Użyj pliku runsettings , aby przekazać wartości jako parametry do kodu testowego. Na przykład w wydaniu zawierającym kilka etapów można przekazać odpowiedni adres URL aplikacji do każdego zadania testowego w każdym z nich. Plik runsettings i pasujące parametry muszą być określone w zadaniu testowym programu Visual Studio.
.: Jakie są typowe scenariusze błędów lub problemy, które należy sprawdzić, jeśli testy nie są uruchamiane?
1: Sprawdź i rozwiąż problemy w następujący sposób:
Potok wydania i etap, w którym chcę uruchomić testy, nie są wyświetlane po wybraniu kompilacji.
- Upewnij się, że potok kompilacji, który generuje kompilację, jest połączony jako podstawowy artefakt na karcie Artefakty potoku wydania.
Otrzymuję błąd, że nie mam wystarczających uprawnień do wyzwolenia wydania.
- Skonfiguruj pozycję Utwórz wydania i Zarządzaj uprawnieniami wdrożenia dla użytkownika w menu Zabezpieczenia potoku wydania. Zobacz Uprawnienia wydania.
Otrzymuję błąd, że nie znaleziono testów automatycznych.
Moje testy nie wykonane i podejrzewam, że potok wydania jest niepoprawny.
- Użyj linku na stronie Podsumowanie uruchamiania, aby uzyskać dostęp do wystąpienia wydania używanego do uruchamiania testów i wyświetlić dzienniki wydania.
Moje testy przechodzą do stanu błędu lub pozostają "w toku", nawet po wyzwoleniu wydania do etapu.
- Sprawdź, czy wybrany etap wydania ma wybrane prawidłowe zadanie i wybraną wersję. Musisz użyć wersji 2 lub nowszej zadania testowego programu Visual Studio. Wersja 1 zadania i zadanie Uruchom testy funkcjonalne nie są obsługiwane.