Google 致力于为黑人社区推动种族平等。查看具体举措
Ta strona została przetłumaczona przez Cloud Translation API.
Switch to English

Rób zrzuty ekranu w testach oprzyrządowania

Laboratorium Firebase zawiera bibliotekę, której można używać do robienia zrzutów ekranu podczas uruchamiania testów instrumentacji, takich jak testy napisane w ramach testów Espresso . Aby dodać tę możliwość do testu, pobierz bibliotekę cloudtestingscreenshotter_lib.aar .

Możliwość robienia zrzutów ekranu jest już włączona do testowego pliku APK, app-debug-test-unaligned.apk , dla przykładowej aplikacji NotePad, a zrzuty ekranu są również przechwytywane po uruchomieniu testu Robo . Poniższe instrukcje wyjaśniają, jak dodać bibliotekę zrzutów ekranu do aplikacji i jak wywołać tę bibliotekę z testu.

Po uruchomieniu testu możesz przejrzeć zrzuty ekranu w Android Studio lub w konsoli Firebase.

Dodaj bibliotekę zrzutów ekranu do swojego projektu

  1. W Android Studio otwórz widok projektu i kliknij prawym przyciskiem myszy nazwę projektu. Następnie kliknij Nowy > Katalog .

  2. W oknie dialogowym Nowy katalog wpisz aars . Spowoduje to utworzenie katalogu aars w katalogu głównym projektu testowego (jako katalog równorzędny do folderu aplikacji ).

  3. Skopiuj plik cloudtestingscreenshotter_lib.aar i wklej go do folderu aars .

  4. W pliku build.gradle poziomie głównym aplikacji (na poziomie projektu) dodaj odwołanie do folderu aars w każdym bloku repositories :

    repositories {
        jcenter()
        flatDir {
            dirs '../aars'
        }
    }
    ...
  5. W katalogu najwyższego poziomu modułu (w przypadku przykładowej aplikacji NotePad jest to katalog aplikacji ) otwórz plik build.gradle i dodaj zależność do cloudtestingscreenshotter_lib.aar do bloku dependencies najwyższego poziomu:

    dependencies {
        // Cloud testing
        androidTestCompile (name:'cloudtestingscreenshotter_lib', ext:'aar')
        // Other dependencies go here
        }
    
  6. W pliku AndroidManifest.xml określ uprawnienia systemowe dla aplikacji, dodając następujące wiersze w tagu <manifest> . Jeśli WRITE_EXTERNAL_STORAGE na Androidzie 10 (poziom API 29) lub nowszym , pomiń uprawnienie WRITE_EXTERNAL_STORAGE (Twoja aplikacja nie wymaga tego uprawnienia do odczytywania i zapisywania zrzutów ekranu na urządzeniu).

    <manifest ... >
       <!-- WRITE_EXTERNAL_STORAGE is not needed on Android 10 (API level 29) or higher. -->
       <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
       <uses-permission android:name="android.permission.INTERNET"/>
       ...
    </manifest>
    

Zrób zrzut ekranu z testu

W dowolnym momencie w teście, w którym chcesz zrobić zrzut ekranu, zadzwoń ScreenShotter.takeScreenshot metody z biblioteki cloudtestingscreenshotter_lib, gdzie pierwszy argument jest etykieta, która służy do identyfikacji screenshot ( main_screen_2 jest używana w poniższym przykładzie):

Jawa

ScreenShotter.takeScreenshot("main_screen_2", this /* activity */);

Kotlin + KTX

ScreenShotter.takeScreenshot("main_screen_2", this /* activity */)

Zobacz zrzuty ekranu

Po zakończeniu testu możesz porównać wszystkie zrzuty ekranu wykonane podczas testowania, wybierając element w drzewie wyników testu, a następnie klikając przycisk Wyświetl zrzuty ekranuZobacz zrzuty ekranu opcja.

Screenshot comparison screen

Możesz wybrać i porównać zrzuty ekranu z różnych konfiguracji w następujący sposób:

Zadanie Akcja
Przełączaj się między wykonaniami testów. Użyj menu rozwijanego w lewym górnym rogu.

menu przypadków testowych
Przełączaj się między zrzutami ekranu podczas wykonywania testu. Użyj strzałek w prawym górnym rogu.

przełącznik zrzutów ekranu
Dodaj dodatkowe panele porównujące zrzuty ekranu do bieżącego widoku. Kliknij Porównaj .

Porównać
Wybierz inny wymiar testu (typ urządzenia, orientacja, lokalizacja itp.). Wybierz nowy element wymiaru z listy u dołu zrzutu ekranu.

Następny krok

Pobierz przykładową aplikację NotePad .