Pakiet Compatibility Test Suite (CTS) obejmuje miliony testów. Chociaż testy CTS są konieczne często na etapie tworzenia oprogramowania, można skrócić czas potrzebny na przeprowadzenie testów.
Na tej stronie opisujemy metody, których możesz użyć, aby skrócić czas wykonywania testu, i jak zoptymalizować zasoby sprzętowe do procesu.
Urządzenia do fragmentacji
Aby skrócić czas cyklu, rozważ uruchomienie CTS na wielu urządzeniach (dzielenie na fragmenty). Aby dowiedzieć się, jak można stosować dzielenie na fragmenty, zapoznaj się z artykułem Uruchami testów CTS.
Stacja testowa Androida
Użyj Android Test Station (ATS), aby uruchomić standardowe zestawy testów Androida za pomocą interfejsu użytkownika. To narzędzie działa jako interfejs internetowy dla Federacji Handlowej (TF), umożliwiając uruchamianie CTS z minimalną konfiguracją na zestawie urządzeń testowych, a także ustalanie harmonogramu ciągłego przeprowadzania testów.
Stacja testowa Androida obsługuje tryb wielu hostów, w którym jeden host kontrolera ATS może służyć do zarządzania urządzeniami i testami na wielu hostach wykonawców ATS.
Ciągłe działanie emulatora
Aby stale uruchamiać CTS na etapie rozwoju, możesz użyć urządzeń wirtualnych Androida (AVD) jako zamiennika sprzętu. Regresje niepowodzeń testów można szybko zidentyfikować, oszczędzając w ten sposób czas potrzebny na podział i analizę przyczyn. Do podziału na części można używać wielu instancji emulatora, które można zaplanować tak, aby działały nieprzerwanie w ramach stacji testowej Androida.
Program jakości drawElements (dEQP)
Program jakości drawElements
(dEQP) jest uwzględniony w pakiecie SDK Androida. Ten program o nazwie CtsDepqTestCases
skupia się
na testowaniu zasięgu grafiki na Androidzie. Moduł ten odpowiada za prawie 80% wszystkich przypadków testowych w narzędziu CTS Androida i zajmuje 6% łącznego czasu wykonywania.
Sterowniki graficzne Androida są częścią oprogramowania układowego Androida (BSP) i nie zmieniają się zbytnio w trakcie procesu tworzenia, więc możesz uruchamiać ten moduł strategicznie. Jeśli na przykład podczas tworzenia oprogramowania uruchamiasz CTS co 2 tygodnie (lub rzadziej), możesz wykluczyć ten moduł na kilka cykli.
Możesz na przykład uruchomić CtsDeqpTestCases
oddzielnie na zestawie urządzeń, a potem przesłać raporty CTS. Na przykład na 2 różnych hostach.
Host 1:
cts-tf > run cts --max-log-size 100 --shard-count 6 -o -m CtsDeqpTestCases
Host 2:
cts-tf > run cts --max-log-size 100 --shard-count 6 -o --exclude-filter CtsDeqpTestCases
Multimedialne przypadki testowania
Przypadki testowe multimediów weryfikują usługi multimedialne, takie jak dźwięk, wideo i sterowniki multimedialne. Te multimedialne moduły testowe najbardziej wpływają na czas wykonywania narzędzia CTS. Opóźnienia mogą wystąpić, gdy:
- Pobieranie plików multimedialnych lub wielokrotne odtwarzanie plików multimedialnych podczas testów.
- Ponawianie nieudanych prób.
Pakiet Android CTS zawiera te moduły testów:
CtsMediaStressTestCases
CtsMediaPlayerTestCases
CtsMediaAudioTestCases
CtsVideoTestCases
CtsMediaDecoderTestCases
CtsMediaCodecTestCases
CtsMediaV2TestCases
Rozważ przeprowadzenie testów multimediów lokalnie lub na lokalnym serwerze. Szczegółowe informacje znajdziesz w artykule Testowanie multimediów w CTS na komputerze.
Ramka multimedialna i jej sterowniki (dekodery i kodeki) są częścią oprogramowania wewnętrznego Androida (BSP). Możesz strategicznie uruchamiać ten moduł i wykluczać te moduły przez kilka cykli na podstawie harmonogramu aktualizacji oprogramowania.