Omówienie pakietu testów zgodności (CTS)

Compatibility Test Suite (CTS) to bezpłatny zestaw testów i narzędzi klasy komercyjnej, który pomaga zapewnić zgodność urządzeń z Androidem. CTS ma być zintegrowany z Twoim codziennym przepływem pracy, np. za pomocą systemu ciągłej kompilacji. CTS działa na komputerze i wykonuje testy bezpośrednio na podłączonych urządzeniach lub na emulatorze. Ogólne informacje o zgodności z Androidem znajdziesz w artykule Omówienie programu zgodności z Androidem.

Automatyczne testy CTS

Rysunek 1. Automatyczne testy CTS.

Rysunek 1 przedstawia proces wykonywania automatycznych testów CTS:

  1. Pobierz i zainstaluj CTS. Ten krok obejmuje też skonfigurowanie środowiska testowego, stacji roboczej do testowania i urządzenia, które testujesz, czyli urządzenia testowanego (DUT).
  2. Uruchom automatyczne testy CTS.
  3. Zapisz i sprawdź wyniki.
  4. Rozwiąż problemy i ponownie uruchom testy.

Użyj CTS, aby wcześnie wykryć niezgodności i mieć pewność, że implementacje Androida pozostaną zgodne przez cały proces tworzenia.

Komponenty CTS

CTS zawiera te główne komponenty:

Trade Federation
Platforma i struktura testowa umożliwiają automatyczne wykonywanie testów.
Automatyczne testy CTS
Testy, które korzystają ze struktury Trade Federation i można je uruchamiać za pomocą platformy testowej Trade Federation.
Testy weryfikatora CTS (CTS-V)
Testy, które trzeba uruchamiać ręcznie.
Aplikacja weryfikatora CTS (CTS-V)
Aplikacja służąca do przeprowadzania testów CTS-V i zbierania wyników testów CTS-V.
Element testowania

Pojedynczy test przeprowadzany na DUT. Automatyczne elementy testowania są pisane w języku Java jako testy JUnit i pakowane w pliki APK na Androida, aby można je było uruchamiać na urządzeniu docelowym.

Elementy testowania mogą być testami jednostkowymi lub testami funkcjonalnymi. Test jednostkowy testuje atomowe jednostki kodu w platformie Android. Na przykład test jednostkowy może testować pojedynczą klasę Androida.

Test funkcjonalny sprawdza kombinację metod i klas używanych w konkretnym przypadku użycia.

Konfiguracja testu

Określony zestaw automatycznych testów, które są uruchamiane na DUT. Konfiguracje testów to pliki XML znajdujące się w WORKING_DIRECTORY/cts/tools/cts-tradefed/res/config. Istnieją konfiguracje testów, które zawierają wszystkie automatyczne elementy testowania, oraz konfiguracje testów, które zawierają podzbiór elementów testowania.

Moduł testowy

Konfiguracja testu składająca się z kolekcji elementów testowania dla tego samego obszaru funkcji.

Plan testów

Konfiguracja testu składająca się z kolekcji modułów testowych.

Pokrycie testowe

Aby zapewnić zgodność, elementy testowania obejmują te obszary:

Obszar Opis
Testy podpisu W przypadku każdej wersji Androida dostępne są pliki XML opisujące podpisy wszystkich publicznych interfejsów API zawartych w tej wersji. CTS zawiera narzędzie do sprawdzania tych podpisów interfejsów API pod kątem interfejsów API dostępnych na urządzeniu. Wyniki sprawdzania podpisu są zapisywane w pliku XML z wynikami testu.
Testy interfejsu API platformy Testuj interfejsy API platformy (biblioteki podstawowe i struktura aplikacji na Androida) zgodnie z dokumentacją w indeksie klas pakietu SDK, aby zapewnić poprawność interfejsu API, w tym prawidłowe podpisy klas, atrybutów i metod, prawidłowe działanie metod oraz testy negatywne, aby zapewnić oczekiwane działanie w przypadku nieprawidłowej obsługi parametrów.
Testy Dalvik Testy koncentrują się na testowaniu formatu wykonywalnego Dalvik.
Model danych platformy CTS testuje podstawowy model danych platformy udostępniany programistom aplikacji za pomocą dostawców treści zgodnie z dokumentacją w pakiecie SDK android.provider (w tym kontakty, przeglądarki i ustawienia).
Intencje platformy CTS testuje podstawowe intencje platformy zgodnie z dokumentacją w pakiecie SDK Common intents.
Uprawnienia platformy CTS testuje podstawowe uprawnienia platformy zgodnie z dokumentacją w pakiecie SDK Manifest.permission.
Zasoby platformy CTS testuje prawidłową obsługę podstawowych typów zasobów platformy, zgodnie z dokumentacją w pakiecie SDK Resource types overview. Testy CTS obejmują testy wartości, elementów rysowalnych, elementów dziewięciopikselowych, animacji, układów, stylów i motywów oraz wczytywania alternatywnych zasobów.

Co dalej?

Po przeczytaniu tej strony przejdź do artykułu Konfigurowanie CTS.