Pengujian GTS (GtsSafetyCenterTestCases
)
Pengujian GTS menerapkan batasan pada file konfigurasi. Lihat Memperbarui file konfigurasi. Perangkat dikecualikan dari pengujian ini jika perangkat tidak mendukung Pusat Keamanan.
Batasannya adalah sebagai berikut:
- Setidaknya harus ada tujuh grup sumber Pusat Keamanan, yang harus tetap dalam status tidak dimodifikasi atau default. Beberapa {i>field<i} khusus seperti judul sumber, status tampilan awal, dan ringkasan terkadang didukung oleh string yang dapat di-overlay dan dapat diubah.
Untuk
GoogleAppSecuritySources
:- Jangan menghapus atau mengubah sumber keamanan
GooglePlayProtect
. - Anda dapat menghapus atau mengubah sumber keamanan
GoogleAppProtectionService
. Jika ada:- Aplikasi harus mendukung logging.
- Jika nama paket tidak berubah, nama paket harus memiliki
initialDisplayState="hidden"
di Android 13; di Android 14, itu harus berupaissue-only-safety-source
dandeduplicationGroup
harus tetap tidak berubah. - Jika nama paket diubah, paket harus memiliki peran
"android.app.role.SYSTEM_APP_PROTECTION_SERVICE"
; selain itu di Android 14 tidak boleh memilikideduplicationGroup
.
- Jangan menghapus atau mengubah sumber keamanan
Untuk
AndroidLockScreenSources
:- Instance
summary
grup diperlukan dan Anda dapat mengubahnya, termasuk dengan overlay string. - Setidaknya harus ada satu sumber keamanan.
- Sumber keamanan pertama dimaksudkan sebagai sumber yang mengontrol setelan
layar kunci dan tidak boleh dapat mendorong masalah atau entri yang lebih
parah daripada
SEVERITY_LEVEL_RECOMMENDATION
(maxSeverityLevel="300"
atau hingga entri kuning atau kartu peringatan). Di Android 14,deduplicationGroup
harus tetap tidak berubah. - Sumber keamanan lainnya dimaksudkan sebagai sumber yang terkait dengan biometrik
mekanisme buka kunci dan mereka harus memiliki
maxSeverityLevel="0"
.
- Instance
Di Android 13, jangan ubah
GoogleAccountSources
,GoogleDeviceFinderSources
, atauAndroidAdvancedSources
. Di Android 14, Anda dapat menghapus beberapa sumber baru yang diperkenalkan dalam kelompok ini (misalnya pencadangan &pemulihan), Anda juga dapat menambahkan sumber statis baru ke grupAndroidAdvancedSources
.Untuk
GoogleUpdateSources
:- Anda dapat mengubah
intentAction
untukGoogleSecurityUpdates
dan dapat mengubahnya dengan menggunakan {i>string overlay<i}. - Jangan ubah
GooglePlaySystemUpdate
.
- Anda dapat mengubah
Untuk
AndroidPrivacySources
:- Anda dapat menambahkan, menghapus, atau mengubah beberapa sumber, selama sumber tersebut
issue-only
. - Mereka harus mempertahankan
packageName="com.google.android.permissioncontroller"
. - Jangan ubah sumber
AndroidPrivacySources
lainnya.
- Anda dapat menambahkan, menghapus, atau mengubah beberapa sumber, selama sumber tersebut
Untuk sisa grup sumber keselamatan (jika ada):
- Grup tidak boleh memiliki
summary
ataustatelessIconType
, yang akan menghasilkan grupSAFETY_SOURCES_GROUP_TYPE_RIGID
(SAFETY_SOURCES_GROUP_TYPE_STATELESS
di Android 14.) - Setiap sumber dalam setiap grup
harus statis atau memiliki
maxSeverityLevel="0"
, misalnya, diizinkan mengirim warna abu-abu atau hijau entri tetapi tidak ada masalah.
- Grup tidak boleh memiliki
Uji CTS (CtsSafetyCenterTestCases
)
Mulai Android 13, pengujian CTS berlaku untuk semua OEM
yang mendukung PermissionController
.
Pengujian file konfigurasi (XmlConfigTest
)
Pengujian ini memastikan:
- File konfigurasi XML yang diuraikan cocok dengan konfigurasi yang diuraikan dan ditampilkan oleh Pusat Keamanan dan penguraian ini berhasil.
- Jika tindakan intent
android.settings.PRIVACY_ADVANCED_SETTINGS
ada dalam file XML, tindakan ini harus di-resolve. - Jika tindakan intent
android.settings.PRIVACY_CONTROLS
ada dalam file XML, tindakan ini harus di-resolve.
Pengujian UI (SafetyCenterActivityTest
)
Pengujian ini memastikan:
- Tindakan intent
android.intent.action.SAFETY_CENTER
me-resolve dan membuka tindakan Keamanan & setelan privasi saat Pusat Keamanan diaktifkan, dan layar Setelan saat Pusat Keamanan dinonaktifkan.
Pengujian API (SafetyCenterManagerTest
)
Tujuan pengujian SafetyCenterManagerTest API adalah untuk memastikan bahwa Safety Center API berfungsi sebagaimana mestinya.
Pengujian ini memastikan hal berikut:
SafetyCenterManager.isSafetyCenterEnabled
dikontrol oleh flagDeviceConfig
terkait.- Jika dinonaktifkan, Safety Center API tidak akan berfungsi.
- API Pusat Keselamatan hanya dapat digunakan jika izin terkait dimiliki.
- Data hanya dapat diberikan ke Pusat Keamanan sesuai dengan konfigurasi Anda.
- Saat data diberikan ke Pusat Keamanan, data tersebut akan ditampilkan.
- API ini cocok dengan spesifikasi yang dijelaskan dalam Menggunakan API sumber Safety Center, misalnya, perilaku muat ulang atau pemindaian ulang, menyetel atau menghapus data, dan melaporkan error.
- API internal yang diekspos ke UI berfungsi dengan baik, misalnya, data digabungkan dengan tepat oleh Pusat Keamanan dan data dapat diperbarui.
Pengujian yang tidak didukung di Pusat Keamanan (SafetyCenterUnsupportedTest
)
Pengujian ini memastikan bahwa Pusat Keamanan dinonaktifkan saat perangkat tidak mendukungnya saat dukungan dinonaktifkan dalam file konfigurasi XML framework.
Jika perangkat mendukung Pusat Keamanan, pengujian ini tidak akan berjalan. Jika perangkat tidak mendukung Pusat Keamanan, hanya pengujian ini dan pengujian class data yang melakukannya akan dijalankan.
Pengujian ini memastikan hal berikut:
- Tindakan intent
android.intent.action.SAFETY_CENTER
akan membuka layar Setelan. SafetyCenterManager.isSafetyCenterEnabled
menampilkanfalse
.- Sebagian besar Safety Center API tidak merespons saat dipanggil.
Pengujian class data (SafetySourceDataTest
, SafetySourceIssueTest
, dll.)
Pengujian class data seperti SafetySourceDataTest
dan SafetySourceIssueTest
memastikan class data yang ditampilkan oleh Safety Center berfungsi sebagaimana mestinya,
misalnya, SafetySourceData
, SafetySourceIssue
, dan class internal terkait
lainnya.
Pengujian MTS (SafetyCenterFunctionalTestCases
dan lainnya)
Pengujian ini dijalankan di seluruh update utama dan berlaku untuk semua OEM yang mendukung
PermissionController
. Persyaratan yang diberlakukan oleh pengujian ini dapat berubah
di seluruh update mainline.
Pengujian API (SafetyCenterManagerTest
)
Pengujian ini mirip dengan pengujian CTS SafetyCenterManagerTest
, tetapi
menguji persyaratan yang dapat berubah di seluruh update utama, misalnya:
- Memeriksa konten sebenarnya dari data yang ditampilkan oleh API internal diekspos ke UI
Pengujian UI (SafetyCenterActivityTest
, SafetyCenterStatusCardTest
, SafetyCenterQsActivityTest
, dll.)
Pengujian ini memastikan:
- Mengalihkan ke Pusat Keamanan dengan parameter tertentu berfungsi sebagaimana mestinya, untuk misalnya, mengalihkan ke masalah tertentu. Lihat Mengarahkan ke Pusat Keamanan.
- UI menampilkan status keamanan dasar yang benar.
- UI memungkinkan navigasi ke layar terpisah.
- UI memungkinkan penyelesaian masalah keamanan langsung dari layar Pusat Keamanan
saat ditentukan oleh
SafetySourceIssue
. - UI menciutkan beberapa kartu peringatan dalam satu item dan memungkinkan perluasan ini kembali menjadi beberapa kartu peringatan.
- Data akan diperbarui saat halaman Pusat Keamanan dibuka untuk sumber Pusat Keamanan yang relevan.
- Tombol pindai ulang hanya muncul dalam keadaan tertentu.
- Mengetuk tombol pindai ulang akan mengambil data baru.
Pengujian serupa dilakukan untuk Pusat Keamanan. Lihat Membuat kartu Setelan Cepat kustom untuk aplikasi Anda
Kasus ekstrem tambahan seperti status error dan status tertunda.
Pengujian multi-pengguna (SafetyCenterMultiUsersTest
)
Tujuan pengujian ini adalah untuk memastikan bahwa API berfungsi dengan semestinya saat data disediakan untuk beberapa pengguna atau profil. Lihat Menyediakan data untuk beberapa pengguna dan profil. Penyiapan ini dilakukan dengan menggunakan library internal yang memfasilitasi penyiapan pengguna dan profil terpisah di perangkat menggunakan Bedstead.
Pengujian ini memastikan hal berikut:
- Data milik pengguna digabungkan dengan data terkelola terkait jika ada.
- Hanya sumber yang ditandai dengan
profile="all_profiles"
yang dapat memberikan data di profil terkelola pengguna. - Entri baru dibuat untuk setiap profil terkelola yang terkait dengan pengguna.
- Data milik satu pengguna tidak bocor ke pengguna lain yang tidak terkait.