Testy GTS (GtsSafetyCenterTestCases
)
Testy GTS narzucają ograniczenia na plik konfiguracji. Zobacz Zaktualizuj plik konfiguracji. Urządzenie jest zwolnione z tych testów, jeśli nie obsługuje Centrum bezpieczeństwa.
Ograniczenia te przedstawiają się następująco:
- Powinna istnieć co najmniej 7 grup źródeł Centrum bezpieczeństwa, które powinny pozostać w stanie niezmodyfikowanym lub domyślnym. Niektóre pola, takie jak tytuły źródeł, początkowy stan wyświetlania i streszczenie, są czasami obsługiwane przez nakładane ciągi znaków i można je modyfikować.
Dotyczy:
GoogleAppSecuritySources
- Nie usuwaj ani nie modyfikuj źródła bezpieczeństwa
GooglePlayProtect
. - Możesz usunąć lub zmienić
GoogleAppProtectionService
źródło bezpieczeństwa. Jeśli jest dostępny:- Musi obsługiwać rejestrowanie.
- Jeśli nazwa pakietu nie ulegnie zmianie, musi zawierać
initialDisplayState="hidden"
w Androidzie 13. W Androidzie 14 i 15 musi być toissue-only-safety-source
, adeduplicationGroup
musi pozostać bez zmian. W Androidzie 16 musi to byćdynamic-safety-source
, ainitialDisplayState="hidden"
musi pozostać bez zmian.deduplicationGroup
- Jeśli nazwa pakietu zostanie zmieniona, musi mieć rolę
"android.app.role.SYSTEM_APP_PROTECTION_SERVICE"
. Dodatkowo w Androidzie 14 nie może ona zawierać elementudeduplicationGroup
.
- Nie usuwaj ani nie modyfikuj źródła bezpieczeństwa
Dotyczy:
AndroidLockScreenSources
- Wymagane jest wystąpienie
summary
grupy, które możesz modyfikować, w tym za pomocą nakładki ciągu znaków. - Musi być co najmniej 1 źródło bezpieczeństwa.
- Pierwsze źródło bezpieczeństwa to źródło, które kontroluje ustawienia ekranu blokady. Nie powinno ono mieć możliwości przesyłania problemów ani wpisów o większym priorytecie niż
SEVERITY_LEVEL_RECOMMENDATION
(maxSeverityLevel="300"
lub karty z żółtymi wpisami lub karty ostrzegawcze). W Androidzie 14 wartośćdeduplicationGroup
musi pozostać niezmieniona. - Inne źródła zabezpieczeń to źródła związane z mechanizmami odblokowania biometrycznego, które powinny mieć wartość
maxSeverityLevel="0"
.
- Wymagane jest wystąpienie
W Androidzie 13 nie modyfikuj elementów
GoogleAccountSources
,GoogleDeviceFinderSources
aniAndroidAdvancedSources
. W Androidzie 14 możesz usunąć niektóre nowe źródła wprowadzone w tych grupach (np.kopia zapasowa i przywracanie). Możesz też dodać nowe źródła statyczne do grupyAndroidAdvancedSources
.Dotyczy:
GoogleUpdateSources
- Możesz zastąpić
intentAction
wartościąGoogleSecurityUpdates
i zmodyfikować ją za pomocą nakładki tekstu. - Nie zmieniaj wartości
GooglePlaySystemUpdate
.
- Możesz zastąpić
Dotyczy:
AndroidPrivacySources
- Niektóre źródła możesz dodawać, usuwać i modyfikować, o ile są one dostępne w Twoim kraju.
issue-only
- Muszą zachować
packageName="com.google.android.permissioncontroller"
. - Nie zmieniaj pozostałych
AndroidPrivacySources
źródeł.
- Niektóre źródła możesz dodawać, usuwać i modyfikować, o ile są one dostępne w Twoim kraju.
W przypadku pozostałych grup źródeł zabezpieczeń (jeśli takie istnieją):
- Grupy nie mogą zawierać
summary
anistatelessIconType
, ponieważ spowoduje to utworzenie grupySAFETY_SOURCES_GROUP_TYPE_RIGID
(SAFETY_SOURCES_GROUP_TYPE_STATELESS
w Androidzie 14). - Każde źródło w każdej grupie powinno być statyczne lub mieć
maxSeverityLevel="0"
, na przykład zezwalać na przesyłanie wpisów w kolorze szarym lub zielonym, ale bez problemów.
- Grupy nie mogą zawierać
Testy CTS (CtsSafetyCenterTestCases
)
Od Androida 13 testy CTS są stosowane do wszystkich OEM-ów, które obsługują PermissionController
.
Testy pliku konfiguracji (XmlConfigTest
)
Te testy zapewniają:
- Przeanalizowany plik konfiguracji XML musi być zgodny z konfiguracją przeanalizowaną i wyeksponowaną przez Safety Center, a przeanalizowanie musi się udać.
- Jeśli w pliku XML występuje działanie oparte na intencjach
android.settings.PRIVACY_ADVANCED_SETTINGS
, musi ono zostać rozwiązane. - Jeśli w pliku XML występuje działanie oparte na intencjach
android.settings.PRIVACY_CONTROLS
, musi ono zostać rozwiązane.
Testy interfejsu użytkownika (SafetyCenterActivityTest
)
Te testy zapewniają:
- Akcja intencji
android.intent.action.SAFETY_CENTER
jest rozwiązywana i otwiera ekran ustawień Bezpieczeństwo i prywatność, gdy Centrum bezpieczeństwa jest włączone, oraz ekran Ustawienia, gdy Centrum bezpieczeństwa jest wyłączone.
Testy interfejsu API (SafetyCenterManagerTest
)
Celem testów interfejsu API SafetyCenterManagerTest jest sprawdzenie, czy interfejsy API SafetyCenter działają zgodnie z oczekiwaniami.
Te testy zapewniają:
SafetyCenterManager.isSafetyCenterEnabled
jest kontrolowany przez powiązany z nim parametrDeviceConfig
.- Gdy są wyłączone, interfejsy API Centrum bezpieczeństwa nie działają.
- Interfejsy API Centrum bezpieczeństwa są dostępne tylko wtedy, gdy powiązane z nimi uprawnienia są zablokowane.
- Dane mogą być przekazywane do Centrum bezpieczeństwa tylko zgodnie z podstawową konfiguracją.
- Gdy dane są przekazywane do Centrum bezpieczeństwa, są one odpowiednio wyświetlane.
- Interfejsy API odpowiadają specyfikacji opisanej w artykule Korzystanie z interfejsów API źródłowych Centrum bezpieczeństwa, np. zachowanie odświeżania lub ponownego skanowania, ustawianie lub usuwanie danych oraz zgłaszanie błędów.
- Interfejsy API wewnętrzne udostępnione w interfejsie użytkownika działają prawidłowo, np. dane są odpowiednio scalane przez Centrum bezpieczeństwa i można je odświeżać.
Test nieobsługiwany przez Centrum bezpieczeństwa (SafetyCenterUnsupportedTest
)
Ten test zapewnia, że Centrum bezpieczeństwa jest wyłączone, gdy urządzenie go nie obsługuje, gdy obsługa jest wyłączona w pliku konfiguracji XML.
Jeśli urządzenie obsługuje Centrum bezpieczeństwa, ten test nie jest wykonywany. Jeśli urządzenie nie obsługuje Centrum bezpieczeństwa, tylko ten test i testy klas danych zostaną uruchomione.
Ten test zapewnia:
- Działanie o intencji
android.intent.action.SAFETY_CENTER
powoduje otwarcie ekranu Ustawienia. SafetyCenterManager.isSafetyCenterEnabled
zwracafalse
.- Większość interfejsów API Centrum bezpieczeństwa nie odpowiada na wywołania.
Testy klas danych (SafetySourceDataTest
, SafetySourceIssueTest
itp.)
Testy klas danych, takie jak SafetySourceDataTest
i SafetySourceIssueTest
, zapewniają, że klasy danych udostępniane przez Centrum bezpieczeństwa działają zgodnie z oczekiwaniami, np. SafetySourceData
, SafetySourceIssue
i inne powiązane wewnętrzne klasy.
Testy MTS (SafetyCenterFunctionalTestCases
i inne)
Te testy są przeprowadzane w ramach aktualizacji głównych i dotyczą wszystkich OEM-ów, które obsługują PermissionController
. Wymagania stosowane w ramach tych testów mogą się zmieniać w ramach aktualizacji głównych.
Testy interfejsu API (SafetyCenterManagerTest
)
Te testy są podobne do testu CTS SafetyCenterManagerTest
, ale sprawdzają wymagania, które mogą się zmieniać w ramach aktualizacji głównej, na przykład:
- sprawdzanie rzeczywistej zawartości danych zwróconych przez wewnętrzne interfejsy API udostępnione w interfejsie użytkownika;
testy UI (SafetyCenterActivityTest
, SafetyCenterStatusCardTest
, SafetyCenterQsActivityTest
itp.);
Te testy zapewniają:
- Przekierowanie do Centrum bezpieczeństwa z określonymi parametrami działa zgodnie z oczekiwaniami, na przykład przekierowuje do konkretnego problemu. Zobacz Przekierowanie do Centrum bezpieczeństwa.
- Interfejs wyświetla prawidłowy stan bezpieczeństwa.
- Interfejs umożliwia przechodzenie do poszczególnych ekranów.
- Interfejs umożliwia rozwiązywanie problemów z bezpieczeństwem bezpośrednio na ekranie Centrum bezpieczeństwa, jeśli jest to określone przez
SafetySourceIssue
. - Interfejs składa wiele kart z ostrzeżeniem w jeden element i umożliwia rozwinięcie tego elementu w wiele kart z ostrzeżeniem.
- Dane są odświeżane, gdy otwierasz stronę Centrum bezpieczeństwa dla odpowiednich źródeł Centrum bezpieczeństwa.
- Przycisk ponownego skanowania pojawia się tylko w określonych okolicznościach.
- Kliknięcie przycisku ponownego skanowania powoduje pobranie nowych danych.
Podobne testy są przeprowadzane w przypadku Centrum Bezpieczeństwa. Zobacz Tworzenie niestandardowych kart Szybkie ustawienia w aplikacji.
Dodatkowe przypadki skrajne, takie jak stany błędu i stany oczekujące.
Testy z udziałem wielu użytkowników (SafetyCenterMultiUsersTest
)
Celem tych testów jest sprawdzenie, czy interfejs API działa prawidłowo, gdy dane są dostarczane dla wielu użytkowników lub profili. Zobacz Przygotowanie danych wielu użytkowników i profili. Ta konfiguracja jest osiągana dzięki wewnętrznej bibliotece, która ułatwia konfigurowanie oddzielnych użytkowników i profili na urządzeniu za pomocą Bedstead.
Ten test zapewnia:
- Dane należące do użytkownika są łączone z powiązanym profilem zarządzanym, jeśli taki istnieje.
- Tylko źródła oznaczone symbolem
profile="all_profiles"
mogą przesyłać dane na zarządzanym profilu użytkownika. - Dla każdego profilu zarządzanego powiązanego z użytkownikiem tworzony jest nowy wpis.
- Dane należące do jednego użytkownika nie są przekazywane innemu, niezwiązanemu użytkownikowi.