Automatyzowanie testów przy użyciu usługi Azure Pipelines za pomocą edytora klasycznego

W tym artykule przedstawiono informacje na temat konfigurowania i uruchamiania testów aplikacji kanwy wbudowanych w programie Test Studio przy użyciu edytora klasycznego usługi Azure Pipelines w ramach usług Azure DevOps.

Projektu publicznego w usłudze GitHub — Microsoft/PowerAppsTestAutomation można użyć do:

  • Automatyzowania operacji logowania w aplikacji.
  • Otwierania przeglądarki na agencie kompilacji oraz wykonywania zbioru przypadków testowych i zestawów testów.
  • Wyświetlania stanu wykonywania testu w potoku usługi Azure DevOps.

Wymagania wstępne

Przed rozpoczęciem pracy musisz wykonać następujące kroki:

Krok 1 — tworzenie rozwidlenia projektu PowerAppsTestAutomation

Rozwidlenie jest kopią repozytorium. Utworzenie rozwidlenia repozytorium może spowodować wprowadzenie zmian bez wpływania na oryginalny projekt.

  1. Zaloguj się do usługi GitHub.

  2. Przejdź do repozytorium microsoft/PowerAppsTestAutomation. Zamiast tego możesz wyszukać ciąg microsoft/PowerAppsTestAutomation, a następnie wybrać repozytorium:

    Wyszukiwanie w usłudze GitHub.

  3. Wybierz pozycję Rozwidlenie:

    Wybierz pozycję Rozwidlenie.

  4. Wybierz miejsce, w którym chcesz utworzyć rozwidlenie:

    Wybierz rozwidlenie klienta.

Twoje repozytorium z rozwidleniem będzie teraz dostępne.

Krok 2 — tworzenie pliku JSON testowego adresu URL

Plik JSON testowego adresu URL będzie zawierać adresy URL zestawu testów i przypadku testowego umożliwiające weryfikowanie aplikacji. Adresy URL zestawów testów i przypadków testowych można pobrać, wybierając opcję kopiowania linku odtwarzania w programie Test Studio.

Przykładowy plik Samples/TestAutomationURLs.json można znaleźć w utworzonym wcześniej repozytorium.

  1. Utwórz nowy plik TestURLs.json w repozytorium lub użyj dowolnej innej nazwy pliku.
    Nazwa i lokalizacja pliku zostaną zmapowane w zmiennych potoku w dalszej części dokumentu.

  2. Skopiuj format z pliku Samples/TestAutomationURLs.json.

  3. Zaktualizuj sekcję testowych adresów URL przy użyciu testów do zweryfikowania aplikacji.

  4. Zatwierdź zmiany wprowadzone w repozytorium:

    Zaktualizowane JSON.

Tworzenie potoku

  1. Zaloguj się w swoim wystąpieniu usługi Azure DevOps.

  2. Wybierz istniejący projekt lub utwórz nowy.

  3. W menu po lewej stronie wybierz pozycję Potoki.

  4. Wybierz pozycję Utwórz potok:

    Utworzony potok.

  5. Wybierz pozycję Użyj edytora klasycznego:

    Edytor klasyczny.

  6. Wybierz usługę GitHub jako źródło.

  7. W razie potrzeby autoryzuj połączenie GitHub przy użyciu uwierzytelniania OAuth lub osobistego tokenu dostępu:

    Potok w GitHub.

  8. W razie potrzeby dokonaj edycji nazwy połączenia.

  9. Wybierz pozycję ... (wielokropek) z prawej strony wejścia Repozytorium.

  10. Wprowadź nazwę projektu w usłudze GitHub, a następnie wybierz ją:

    Wybierz repozytorium.

  11. Wybierz Kontynuuj.

  12. Na ekranie wybierania szablonu wybierz pozycję Puste zadanie:

    Wybierz puste zadanie.

  13. Zapisz potok.

Dodawanie zadań do potoku

Teraz dodamy nowe zadania i skonfigurujesz zadania, aby uruchomić testy z potoku w tej kolejności:

  1. Konfigurowanie rozdzielczości ekranu przy użyciu programu PowerShell.

  2. Przywracanie pakietów NuGet dla rozwiązania PowerAppsTestAutomation.

  3. Kompilowanie rozwiązania PowerAppsTestAutomation.

  4. Dodawanie testów programu Visual Studio dla przeglądarki Google Chrome.

  5. Dodaj testy Visual Studio dla Mozilla Firefox.

Krok 1 — konfigurowanie rozdzielczości ekranu przy użyciu programu PowerShell

  1. Wybierz symbol + obok pozycji Zadanie agenta 1.

  2. Wyszukaj ciąg PowerShell.

  3. Wybierz pozycję Dodaj, aby dodać zlecenie programu PowerShell do zadania:

    Dodaj PowerShell.

  4. Wybierz zadanie.
    Możesz również zaktualizować nazwę wyświetlaną na Ustaw rozdzielczość ekranu agenta na 1920 x 1080 lub podobną.

  5. Wybierz pozycję Wbudowany jako typ skryptu i w oknie skryptu wprowadź następujące dane:

    # Set agent screen resolution to 1920x1080 to avoid sizing issues with Portal  
    Set-DisplayResolution -Width 1920 -Height 1080 -Force
    # Wait 10 seconds  
    Start-Sleep -s 10
    # Verify Screen Resolution is set to 1920x1080  
    Get-DisplayResolution
    

    Przykład skryptu.

Krok 2 — przywracanie pakietów NuGet

  1. Wybierz symbol + obok pozycji Zadanie agenta 1.

  2. Wyszukaj ciąg NuGet.

  3. Wybierz pozycję Dodaj, aby dodać zlecenie NuGet do zadania.

  4. Wybierz zadanie.
    Możesz również zaktualizować nazwę wyświetlaną na Przywracanie pakietów NuGet lub podobną.

  5. Wybierz (wielokropek) w polu konfiguracji ścieżki do rozwiązania, pliku packages.config lub project.json.

  6. Wybierz plik rozwiązania PowerAppsTestAutomation.sln.

  7. Wybierz przycisk OK:

    Pakiet NuGet.

Krok 3 — kompilowanie rozwiązania PowerAppsTestAutomation

  1. Wybierz symbol + obok pozycji Zadanie agenta 1.

  2. Wyszukaj ciąg kompilacja programu Visual Studio.

  3. Wybierz pozycję Dodaj, aby dodać zlecenie kompilacji programu Visual Studio do zadania.

  4. Wybierz zadanie.
    Możesz również zaktualizować nazwę wyświetlaną na Kompilowanie testowego rozwiązania Power Apps do automatyzacji lub podobną.

  5. Wybierz (wielokropek) w polu konfiguracji Rozwiązanie.

  6. Wybierz plik rozwiązania PowerAppsTestAutomation.sln.

  7. Wybierz pozycję OK.

Krok 4 — dodawanie testów programu Visual Studio dla przeglądarki Google Chrome

  1. Wybierz symbol + obok pozycji Zadanie agenta 1.

  2. Wyszukaj ciąg Test programu Visual Studio.

  3. Wybierz pozycję Dodaj, aby dodać zlecenie testu programu Visual Studio do zadania.

  4. Wybierz zadanie.
    Możesz również zaktualizować nazwę wyświetlaną na Uruchamianie testów rozwiązania testowego programu Power Apps w przeglądarce $(BrowserTypeChrome) lub podobną.

  5. Usuń wpisy domyślne z pola tekstowego Pliki testu i dodaj następujące dane:

    **\Microsoft.PowerApps.TestAutomation.Tests\bin\\Debug\Microsoft.PowerApps.TestAutomation.Tests.dll

  6. Wprowadź TestCategory=PowerAppsTestAutomation w polu kryteriów filtru testów.

  7. Wybierz pozycję Test mieszany zawiera testy interfejsu użytkownika.

    Testowy zestaw zawiera testy interfejsu użytkownika.

  8. Wybierz (wielokropek) w polu Plik ustawień.

  9. Rozwiń węzeł Microsoft.PowerApps.TestAutomation.Tests, wybierz plik patestautomation.runsettings, a następnie kliknij przycisk OK.

    Ustawienia uruchamiania.

  10. Skopiuj poniższe dane w polu Zastąp parametry przebiegu testu.

    -OnlineUsername "$(OnlineUsername)" -OnlinePassword "$(OnlinePassword)" -BrowserType "$(BrowserTypeChrome)" -OnlineUrl "$(OnlineUrl)" -UsePrivateMode "$(UsePrivateMode)" -TestAutomationURLFilePath "$(TestAutomationURLFilePath)" -DriversPath "$(ChromeWebDriver)"
    

    Uwaga

    W takim przypadku zmienne w potoku są konfigurowane w sposób opisany powyżej w postaci $(VariableName).

  11. Wprowadź ciąg Uruchamianie testów automatyzacji testowej programu Power Apps w przeglądarce $(BrowserTypeChrome) lub podobny w polu Tytuł przebiegu testu.

    Przebieg testu.

Krok 5 — Dodaj testy Visual Studio dla Mozilla Firefox

  1. Kliknij prawym przyciskiem myszy zadanie Dodaj testy Visual Studio dla programu Chrome i wybierz polecenie Klonuj zadania.

  2. Wybierz zadanie i zaktualizuj następujące obszary:

    1. Tytuł: Uruchamianie testów automatyzacji testowej programu Power Apps w programie $(BrowserTypeFirefox)

    2. Zastąp parametry przebiegu testu

      -OnlineUsername "$(OnlineUsername)" -OnlinePassword "$(OnlinePassword)" -BrowserType "$(BrowserTypeFirefox)" -OnlineUrl "$(OnlineUrl)" -UsePrivateMode "$(UsePrivateMode)" -TestAutomationURLFilePath "$(TestAutomationURLFilePath)" -DriversPath "$(GeckoWebDriver)"
      
    3. Tytuł przebiegu testu: Uruchamianie testów automatyzacji testowej programu Power Apps w programie $(BrowserTypeFirefox)

Konfigurowani zmiennych potoku

Teraz skonfigurujemy zmienne potoku zdefiniowane w zadaniach dodanych wcześniej.

  1. Wybierz kartę Zmienne.

  2. Wybierz przycisk Dodaj, a następnie powtórz ten krok, aby skonfigurować następujące zmienne:

Nazwa zmiennej Wartość zmiennej
BrowserTypeChrome Chrome
BrowserTypeFirefox Firefox
OnlineUrl https://make.powerapps.com
TestAutomationURLFilePath $(Build.SourcesDirectory)\<test URL file>.json
Uwaga: jest to utworzony wcześniej plik JSON testowych adresów URL.
UsePrivateMode true
OnlineUsername Wprowadź adres e-mail usługi Microsoft Entra powiązany z kontekstem użytkownika, który zaloguje się do aplikacji. Testy będą wykonywane w kontekście tego konta użytkownika. Upewnij się, że ten użytkownik ma możliwość uruchamiania aplikacji i łączenia się ze wszystkimi źródłami danych, z którymi aplikacja może się połączyć.
  1. Wybierz pozycję Dodaj i wprowadź OnlinePassword w polu nazwy zmiennej.

  2. Zaznacz obraz blokady, aby oznaczyć tę zmienną jako tajną.

    Utwórz zmienny wpis tajny.

  3. Zapisz konfiguracje potoku.

Uruchamianie i analizowanie testów

Aby sprawdzić, czy testy są wykonywane pomyślnie, wybierz pozycję kolejka, a następnie wybierz pozycję Uruchom. Zadanie zostanie uruchomione.

Uruchamianie zadania.

Po uruchomieniu zadania wybierz je, aby wyświetlić szczegółowy stan dla każdego z uruchomionych zadań podrzędnych:

Szczegóły zadania.

Po zakończeniu zadania można wyświetlić podsumowanie zadania na wysokim poziomie oraz wszystkie błędy i ostrzeżenia. Wybranie karty Testy umożliwia wyświetlanie szczegółowych informacji o wykonanych przypadkach testowych.

Poniższy przykład wskazuje, że co najmniej jeden z następujących przypadków testowych zakończył się niepowodzeniem podczas wykonywania testów za pomocą przeglądarki Chrome:

Chrom — niepowodzenie.

Wybierz test RunTestAutomation, aby przejść do szczegółów opisujących, dlaczego przypadek testowy zakończył się niepowodzeniem. Na karcie Załączniki można zobaczyć podsumowanie wykonania testu oraz przypadków testowych z zestawu testów, które zakończyły niepowodzeniem lub powodzeniem:

Karta Załączniki.

Uwaga

Jeśli wykonujesz zestaw testów, zobaczysz podsumowanie przypadków testowych zakończonych powodzeniem i niepowodzeniem. W przypadku wykonywania przypadku testowego zobaczysz szczegółowe informacje o błędach wraz z informacjami o śledzeniu, jeśli są dostępne.

Znane ograniczenia

  • Uwierzytelnianie wieloskładnikowe nie jest obsługiwane.

  • Podsumowanie testów będzie zgłaszać pojedynczy wynik testu na przeglądarkę. Wynik testu będzie zawierać co najmniej jeden wynik przypadku testowego lub zestawu testów.

  • W przypadku każdego procesu uwierzytelniania innego niż przepływ logowanie w usłudze Microsoft Entra należy dostosować proces logowania w rozwiązaniu PowerAppsTestAutomation.

Zobacz także

Uwaga

Czy możesz poinformować nas o preferencjach dotyczących języka dokumentacji? Wypełnij krótką ankietę. (zauważ, że ta ankieta jest po angielsku)

Ankieta zajmie około siedmiu minut. Nie są zbierane żadne dane osobowe (oświadczenie o ochronie prywatności).