Testanforderungen

GTS-Tests (GtsSafetyCenterTestCases)

Bei GTS-Tests gelten Einschränkungen für die Konfigurationsdatei. Weitere Informationen finden Sie unter Konfigurationsdatei aktualisieren. Ein Gerät ist von diesen Tests ausgenommen, wenn es den Dienst „Sicherheitscenter“ nicht unterstützt.

Es gelten die folgenden Einschränkungen:

  • Es sollte mindestens sieben Quellengruppen im Sicherheitscenter geben, die im unveränderten oder Standardstatus bleiben sollten. Bestimmte Felder wie Titel von Quellen, der anfängliche Anzeigestatus und die Zusammenfassung werden manchmal von überlagerbaren Strings unterstützt und können geändert werden.
  • Für GoogleAppSecuritySources:

    • Die Sicherheitsquelle „GooglePlayProtect“ darf nicht entfernt oder geändert werden.
    • Sie können die GoogleAppProtectionService-Sicherheitsquelle entfernen oder ändern. Falls vorhanden:
      • Es muss Logging unterstützen.
      • Wenn der Paketname unverändert ist, muss er unter Android 13 eine initialDisplayState="hidden" enthalten. Unter Android 14 muss es sich stattdessen um eine issue-only-safety-source handeln und die deduplicationGroup muss unverändert bleiben.
      • Wenn der Paketname geändert wird, muss er die Rolle "android.app.role.SYSTEM_APP_PROTECTION_SERVICE" haben. Unter Android 14 darf er außerdem keine deduplicationGroup haben.
  • Für AndroidLockScreenSources:

    • Die summary-Instanz der Gruppe ist erforderlich und kann geändert werden, z. B. mit einem String-Overlay.
    • Es muss mindestens eine Sicherheitsquelle vorhanden sein.
    • Die erste Sicherheitsquelle soll die Quelle sein, die die Sperrbildschirmeinstellungen steuert. Sie darf keine Probleme oder Einträge mit einer höheren Priorität als SEVERITY_LEVEL_RECOMMENDATION (maxSeverityLevel="300" oder bis zu gelben Einträgen oder Warnkarten) senden. Unter Android 14 muss deduplicationGroup unverändert bleiben.
    • Die anderen Sicherheitsquellen sind als Quellen im Zusammenhang mit biometrischen Entsperren-Mechanismen gedacht und sollten maxSeverityLevel="0" haben.
  • Ändern Sie unter Android 13 weder GoogleAccountSources noch GoogleDeviceFinderSources noch AndroidAdvancedSources. In Android 14 können Sie einige der neuen Quellen entfernen, die in diesen Gruppen eingeführt wurden (z. B. Sicherung und Wiederherstellung). Sie können der Gruppe AndroidAdvancedSources auch neue statische Quellen hinzufügen.

  • Für GoogleUpdateSources:

    • Sie können intentAction durch GoogleSecurityUpdates ersetzen und das Element mit einem String-Overlay anpassen.
    • Ändern Sie GooglePlaySystemUpdate nicht.
  • Für AndroidPrivacySources:

    • Sie können einige Quellen hinzufügen, entfernen oder ändern, sofern sie issue-only sind.
    • Er muss packageName="com.google.android.permissioncontroller" behalten.
    • Ändern Sie die übrigen AndroidPrivacySources-Quellen nicht.
  • Für die übrigen Sicherheitsgruppen (falls vorhanden):

    • Gruppen sollten keine summary oder statelessIconType enthalten, da dies zu einer SAFETY_SOURCES_GROUP_TYPE_RIGID-Gruppe führt (SAFETY_SOURCES_GROUP_TYPE_STATELESS in Android 14).
    • Jede Quelle in jeder Gruppe sollte entweder statisch sein oder maxSeverityLevel="0" haben, z. B. dürfen graue oder grüne Einträge gesendet werden, aber keine Probleme auftreten.

CTS-Tests (CtsSafetyCenterTestCases)

Ab Android 13 gelten CTS-Tests für alle OEMs, die PermissionController unterstützen.

Konfigurationsdateitests (XmlConfigTest)

Diese Tests sorgen für Folgendes:

  • Die geparste XML-Konfigurationsdatei stimmt mit der vom Safety Center geparsten und freigegebenen Konfiguration überein und das Parsen war erfolgreich.
  • Wenn die Intent-Aktion android.settings.PRIVACY_ADVANCED_SETTINGS in der XML-Datei vorhanden ist, muss diese Aktion aufgelöst werden.
  • Wenn die Intent-Aktion android.settings.PRIVACY_CONTROLS in der XML-Datei vorhanden ist, muss diese Aktion aufgelöst werden.

UI-Tests (SafetyCenterActivityTest)

Diese Tests sorgen für Folgendes:

  • Die Intent-Aktion android.intent.action.SAFETY_CENTER wird verarbeitet und öffnet den Bildschirm Sicherheit und Datenschutz, wenn der Dienst „Sicherheitscenter“ aktiviert ist, oder den Bildschirm „Einstellungen“, wenn der Dienst deaktiviert ist.

API-Tests (SafetyCenterManagerTest)

Ziel der SafetyCenterManagerTest API-Tests ist es, sicherzustellen, dass die Safety Center APIs wie vorgesehen funktionieren.

Diese Tests sorgen für Folgendes:

  • SafetyCenterManager.isSafetyCenterEnabled wird vom zugehörigen Flag DeviceConfig gesteuert.
  • Wenn die APIs des Safety Centers deaktiviert sind, werden keine Aktionen ausgeführt.
  • Die Safety Center APIs können nur verwendet werden, wenn die zugehörigen Berechtigungen vorliegen.
  • Daten können dem Safety Center nur gemäß der zugrunde liegenden Konfiguration zur Verfügung gestellt werden.
  • Wenn Daten an das Safety Center gesendet werden, werden sie entsprechend angezeigt.
  • Die APIs entsprechen den Spezifikationen, die im Hilfeartikel Safety Center-Quell-APIs verwenden beschrieben sind, z. B. Aktualisierungs- oder Neuabfrageverhalten, Festlegen oder Löschen von Daten und Melden von Fehlern.
  • Die internen APIs, die für die Benutzeroberfläche freigegeben sind, funktionieren ordnungsgemäß. Beispielsweise werden die Daten vom Safety Center ordnungsgemäß zusammengeführt und können aktualisiert werden.

Nicht unterstützter Sicherheitscheck (SafetyCenterUnsupportedTest)

Mit diesem Test wird sichergestellt, dass das Sicherheitscenter deaktiviert ist, wenn das Gerät es nicht unterstützt oder die Unterstützung in der XML-Konfigurationsdatei des Frameworks deaktiviert ist.

Wenn das Gerät das Sicherheitscenter unterstützt, wird dieser Test nicht ausgeführt. Wenn das Gerät das Sicherheitscenter nicht unterstützt, werden nur dieser Test und die Tests für Datenklassen ausgeführt.

Mit diesem Test wird Folgendes sichergestellt:

  • Mit der Intent-Aktion android.intent.action.SAFETY_CENTER wird der Bildschirm „Einstellungen“ geöffnet.
  • SafetyCenterManager.isSafetyCenterEnabled gibt false zurück.
  • Die meisten Safety Center APIs reagieren nicht, wenn sie aufgerufen werden.

Tests für Datenklassen (SafetySourceDataTest, SafetySourceIssueTest usw.)

Mit Datenklassentests wie SafetySourceDataTest und SafetySourceIssueTest wird sichergestellt, dass die vom Safety Center freigegebenen Datenklassen wie SafetySourceData, SafetySourceIssue und andere zugehörige interne Klassen wie vorgesehen funktionieren.

MTS-Tests (SafetyCenterFunctionalTestCases und andere)

Diese Tests werden für allgemeine Updates durchgeführt und gelten für alle OEMs, die PermissionController unterstützen. Die durch diese Tests erzwungenen Anforderungen können sich bei Mainline-Updates ändern.

API-Tests (SafetyCenterManagerTest)

Diese Tests ähneln dem CTS-Test SafetyCenterManagerTest, testen jedoch Anforderungen, die sich bei Mainline-Updates ändern können. Beispiel:

  • Prüfen des tatsächlichen Inhalts der Daten, die von den internen APIs zurückgegeben werden, die der Benutzeroberfläche zur Verfügung gestellt werden

UI-Tests (SafetyCenterActivityTest, SafetyCenterStatusCardTest, SafetyCenterQsActivityTest usw.)

Diese Tests sorgen für Folgendes:

  • Die Weiterleitung zum Sicherheitscenter mit bestimmten Parametern funktioniert wie vorgesehen, z. B. die Weiterleitung zu einem bestimmten Problem. Weitere Informationen finden Sie unter Zum Sicherheitscenter weiterleiten.
  • Auf der Benutzeroberfläche wird der korrekte zugrunde liegende Sicherheitsstatus angezeigt.
  • Über die Benutzeroberfläche können Sie zu separaten Bildschirmen wechseln.
  • Über die Benutzeroberfläche können Sicherheitsprobleme direkt über den Bildschirm „Sicherheitscenter“ behoben werden, wenn dies von SafetySourceIssue angegeben wird.
  • In der Benutzeroberfläche werden mehrere Warnkarten in einem Element minimiert und können wieder in mehrere Warnkarten maximiert werden.
  • Die Daten werden aktualisiert, wenn die Seite „Sicherheitscenter“ für die entsprechenden Sicherheitscenter-Quellen geöffnet wird.
  • Die Schaltfläche „Noch einmal suchen“ wird nur unter bestimmten Umständen angezeigt.
  • Wenn Sie auf die Schaltfläche „Noch einmal scannen“ tippen, werden neue Daten abgerufen.
  • Ähnliche Tests werden auch für das Safety Center durchgeführt. Weitere Informationen finden Sie unter Benutzerdefinierte Kacheln für die Schnelleinstellungen für Ihre App erstellen.

  • Weitere Grenzfälle wie Fehler- und ausstehende Status

Tests mit mehreren Nutzern (SafetyCenterMultiUsersTest)

Mit diesen Tests soll sichergestellt werden, dass die API ordnungsgemäß funktioniert, wenn Daten für mehrere Nutzer oder Profile bereitgestellt werden. Siehe Daten für mehrere Nutzer und Profile bereitstellen. Dazu wird eine interne Bibliothek verwendet, die die Einrichtung separater Nutzer und Profile auf dem Gerät mit Bedstead vereinfacht.

Mit diesem Test wird Folgendes sichergestellt:

  • Daten, die einem Nutzer gehören, werden mit dem zugehörigen verwalteten Profil zusammengeführt, sofern vorhanden.
  • Nur Quellen, die mit profile="all_profiles" gekennzeichnet sind, können Daten in das verwaltete Profil des Nutzers einspeisen.
  • Für jedes verwaltete Profil, das mit einem Nutzer verknüpft ist, wird ein neuer Eintrag erstellt.
  • Die Daten eines Nutzers werden nicht an einen anderen Nutzer weitergegeben, der nicht mit dem Internet verbunden ist.