Requisiti di test

Test GTS (GtsSafetyCenterTestCases)

I test GTS impongono vincoli sul file di configurazione. Consulta la sezione Aggiornamento del di configurazione del deployment. Un dispositivo è esentato da questi test se non supporta la funzionalità di sicurezza al centro.

I vincoli sono i seguenti:

  • Devono essere presenti almeno sette gruppi di origini di Safety Center, che devono rimanere nello stato non modificato o predefinito. Alcuni campi specifici, come i titoli delle fonti, lo stato di visualizzazione iniziale e il riepilogo, a volte sono supportati da stringhe sovrapponibili e possono essere modificati.
  • Per GoogleAppSecuritySources:

    • Non rimuovere o modificare l'origine di sicurezza GooglePlayProtect.
    • Puoi rimuovere o modificare la fonte di sicurezza di GoogleAppProtectionService. Se è presente:
      • Deve supportare la registrazione.
      • Se il nome del pacchetto non è modificato, deve avere initialDisplayState="hidden" in Android 13; in Android 14, deve essere un issue-only-safety-source e il deduplicationGroup deve rimanere invariato.
      • Se il nome del pacchetto viene modificato, deve avere il ruolo"android.app.role.SYSTEM_APP_PROTECTION_SERVICE"; inoltre, in Android 14 non deve avere undeduplicationGroup.
  • Per AndroidLockScreenSources:

    • L'istanza summary del gruppo è obbligatoria e puoi modificarla, anche con un overlay di stringhe.
    • Deve essere presente almeno una fonte di sicurezza.
    • La prima origine di sicurezza è pensata per essere quella che controlla le impostazioni della schermata di blocco e non deve essere in grado di inviare problemi o voci più gravi di SEVERITY_LEVEL_RECOMMENDATION (maxSeverityLevel="300" o fino a schede di avviso o di avviso gialle). Su Android 14, il deduplicationGroup deve rimanere senza modifiche.
    • Le altre sorgenti di sicurezza devono essere sorgenti relative ai meccanismi di sblocco biometrico e devono avere maxSeverityLevel="0".
  • In Android 13, non modificare GoogleAccountSources, GoogleDeviceFinderSources o AndroidAdvancedSources. In Android 14, puoi rimuovere alcune delle nuove origini introdotte in questi gruppi (ad es. backup e ripristino), nonché aggiungere nuove origini statiche al gruppo AndroidAdvancedSources.

  • Per GoogleUpdateSources:

    • Puoi sostituire intentAction con GoogleSecurityUpdates e modificarlo con un overlay di stringa.
    • Non modificare GooglePlaySystemUpdate.
  • Per AndroidPrivacySources:

    • Puoi aggiungere, rimuovere o modificare alcune origini, a condizione che siano issue-only.
    • Devono tenere packageName="com.google.android.permissioncontroller".
    • Non modificare il resto delle origini AndroidPrivacySources.
  • Per gli eventuali altri gruppi di origini di sicurezza:

    • I gruppi non devono avere summary o statelessIconType, il che comporta un gruppo SAFETY_SOURCES_GROUP_TYPE_RIGID (SAFETY_SOURCES_GROUP_TYPE_STATELESS su Android 14).
    • Ogni origine all'interno di ogni gruppo deve essere statica o avere maxSeverityLevel="0", ad esempio, autorizzato a inviare voci grigie o verdi, ma senza problemi.

Test CTS (CtsSafetyCenterTestCases)

A partire da Android 13, i test CTS si applicano a tutti gli OEM che supportano PermissionController.

Test del file di configurazione (XmlConfigTest)

Questi test garantiscono:

  • Il file di configurazione XML analizzato corrisponde alla configurazione analizzata e esposti dal Centro per la sicurezza online e che l'analisi è riuscita.
  • Se è presente l'azione intent android.settings.PRIVACY_ADVANCED_SETTINGS nel file XML, questa azione deve essere risolta.
  • Se l'azione intent android.settings.PRIVACY_CONTROLS è presente nel XML, questa azione deve essere risolta.

Test UI (SafetyCenterActivityTest)

Questi test garantiscono:

  • L'azione intent android.intent.action.SAFETY_CENTER risolve e apre la schermata delle impostazioni Sicurezza e privacy quando il Centro per la sicurezza online è attivo e la schermata Impostazioni quando il Centro per la sicurezza online è disattivato.

Test delle API (SafetyCenterManagerTest)

L'obiettivo dei test dell'API SafetyCenterManagerTest è garantire che gli Le API Center funzionano come previsto.

Questi test garantiscono quanto segue:

  • SafetyCenterManager.isSafetyCenterEnabled è controllato dall'account associato Flag DeviceConfig.
  • Se sono disattivate, le API di Safety Center non eseguono alcuna operazione.
  • Le API Centro per la sicurezza online sono utilizzabili solo se le autorizzazioni associate sono in sospeso.
  • I dati possono essere forniti al Centro per la sicurezza online solo in conformità con le disposizioni configurazione.
  • I dati forniti al Centro per la sicurezza online vengono visualizzati di conseguenza.
  • Le API corrispondono alle specifiche descritte in Utilizzare le API di origine del Centro per la sicurezza, ad esempio il comportamento di aggiornamento o nuova scansione, l'impostazione o l'eliminazione dei dati e la segnalazione degli errori.
  • Le API interne esposte all'interfaccia utente funzionano correttamente, ad esempio i dati vengono uniti correttamente dal Centro per la sicurezza online e possono essere aggiornati.

Test non supportato dal Centro per la sicurezza online (SafetyCenterUnsupportedTest)

Questo test garantisce che il Centro per la sicurezza online sia disattivato quando il dispositivo non supporta quando il relativo supporto è disabilitato nel file di configurazione XML del framework.

Se il dispositivo supporta il Centro di sicurezza, questo test non viene eseguito. Se il dispositivo non supporta il Centro per la sicurezza online, ma solo questo test e i test delle classi di dati vengono eseguiti tutti i test delle unità.

Questo test garantisce quanto segue:

  • L'azione dell'intent android.intent.action.SAFETY_CENTER apre la schermata Impostazioni.
  • SafetyCenterManager.isSafetyCenterEnabled restituisce false.
  • La maggior parte delle API del Centro per la sicurezza online non risponde quando viene chiamata.

Test delle classi di dati (SafetySourceDataTest, SafetySourceIssueTest e così via)

Test delle classi di dati come SafetySourceDataTest e SafetySourceIssueTest garantire che le classi di dati esposte dal Centro per la sicurezza online funzionino come previsto, ad esempio SafetySourceData, SafetySourceIssue e altri indirizzi interni correlati .

Test MTS (SafetyCenterFunctionalTestCases e altri)

Questi test vengono eseguiti sugli aggiornamenti principali e si applicano a tutti gli OEM che supportano PermissionController. I requisiti applicati da questi test possono cambiare tra gli aggiornamenti della versione principale.

Test API (SafetyCenterManagerTest)

Questi test sono simili al test CTS SafetyCenterManagerTest, tuttavia Requisiti dei test che potrebbero cambiare con gli aggiornamenti principali, ad esempio:

  • Controllo dei contenuti effettivi dei dati restituiti dalle API interne esposte all'interfaccia utente

Test dell'interfaccia utente (SafetyCenterActivityTest, SafetyCenterStatusCardTest, SafetyCenterQsActivityTest e così via)

Questi test assicurano che:

  • Il reindirizzamento al Centro sicurezza con parametri specifici funziona come previsto, ad esempio il reindirizzamento a un problema specifico. Consulta Reindirizzare al Centro per la sicurezza.
  • La UI mostra lo stato di sicurezza di base corretto.
  • L'interfaccia utente consente di passare a schermate separate.
  • La UI consente di risolvere i problemi di sicurezza direttamente dalla schermata del Centro per la sicurezza online quando specificato da SafetySourceIssue.
  • L'interfaccia utente comprime più schede di avviso in un unico elemento e consente di espanderle nuovamente in più schede di avviso.
  • I dati vengono aggiornati all'apertura della pagina Centro per la sicurezza online per l'elemento Fonti del Centro per la sicurezza online.
  • Il pulsante di nuova ricerca viene visualizzato solo in circostanze specifiche.
  • Toccando il pulsante Nuova scansione vengono recuperati nuovi dati.
  • Test simili vengono effettuati per il Centro per la sicurezza online. Vedi Creare rapide personalizzate Riquadri delle impostazioni per app

  • Casi limite aggiuntivi come stati di errore e stati in attesa.

Test con più utenti (SafetyCenterMultiUsersTest)

Lo scopo di questi test è verificare che l'API funzioni correttamente quando vengono forniti dati per più utenti o profili. Vedi Fornire dati per più utenti e profili. Questo si ottiene mediante una libreria interna che facilita l'impostazione separare utenti e profili sul dispositivo utilizzando Bedstead.

Questo test garantisce quanto segue:

  • I dati appartenenti a un utente vengono uniti a quelli gestiti associati del profilo, se esistente.
  • Solo le origini contrassegnate con profile="all_profiles" possono fornire dati nel profilo gestito dell'utente.
  • Viene creata una nuova voce per ogni profilo gestito associato a un utente.
  • I dati appartenenti a un utente non vengono divulgati a un altro utente non correlato.