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:
- Harus ada setidaknya tujuh grup sumber Pusat Keamanan yang harus tetap dalam status tidak diubah atau default. Beberapa kolom tertentu seperti judul sumber, status tampilan awal, dan ringkasan terkadang didukung oleh string yang dapat ditempatkan 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 tersebut harus memiliki
initialDisplayState="hidden"
di Android 13; di Android 14, nama tersebut harus berupaissue-only-safety-source
dandeduplicationGroup
harus tetap tidak berubah. - Jika diubah, nama paket harus memiliki peran
"android.app.role.SYSTEM_APP_PROTECTION_SERVICE"
; selain itu, di Android 14, nama paket tidak boleh memilikideduplicationGroup
.
- Jangan menghapus atau mengubah sumber keamanan
Untuk
AndroidLockScreenSources
:- Instance
summary
grup diperlukan dan Anda dapat mengubahnya, termasuk dengan overlay string. - Harus ada minimal satu sumber keselamatan.
- 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 mekanisme
buka kunci biometrik dan 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 grup ini (misalnya, pencadangan & pemulihan), Anda juga dapat menambahkan sumber statis baru ke grupAndroidAdvancedSources
.Untuk
GoogleUpdateSources
:- Anda dapat mengubah
intentAction
untukGoogleSecurityUpdates
dan dapat mengubahnya dengan overlay string. - 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 sisa sumber
AndroidPrivacySources
.
- Anda dapat menambahkan, menghapus, atau mengubah beberapa sumber, selama sumber tersebut
Untuk grup sumber keamanan lainnya (jika ada):
- Grup tidak boleh memiliki
summary
ataustatelessIconType
, yang menghasilkan grupSAFETY_SOURCES_GROUP_TYPE_RIGID
(SAFETY_SOURCES_GROUP_TYPE_STATELESS
di Android 14). - Setiap sumber dalam setiap grup harus bersifat statis atau memiliki
maxSeverityLevel="0"
, misalnya, diizinkan untuk mengirim entri abu-abu atau hijau, tetapi tidak ada masalah.
- Grup tidak boleh memiliki
Pengujian 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 diselesaikan. - Jika tindakan intent
android.settings.PRIVACY_CONTROLS
ada dalam file XML, tindakan ini harus diselesaikan.
Pengujian UI (SafetyCenterActivityTest
)
Pengujian ini memastikan:
- Tindakan intent
android.intent.action.SAFETY_CENTER
me-resolve dan membuka layar setelan Keamanan & privasi saat Pusat Keselamatan diaktifkan, dan layar Setelan saat Pusat Keselamatan 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 Keselamatan sesuai dengan konfigurasi yang mendasarinya.
- 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 ditampilkan ke UI berfungsi dengan baik, misalnya, data digabungkan dengan benar oleh Safety Center dan data dapat dimuat ulang.
Pengujian yang tidak didukung Pusat Keselamatan (SafetyCenterUnsupportedTest
)
Pengujian ini memastikan bahwa Pusat Keamanan dinonaktifkan saat perangkat tidak mendukungnya saat dukungan dinonaktifkan dalam file konfigurasi XML framework.
Jika perangkat mendukung Pusat Keselamatan, pengujian ini tidak akan berjalan. Jika perangkat tidak mendukung Pusat Keamanan, hanya pengujian ini dan pengujian class data yang berjalan.
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 diterapkan oleh pengujian ini dapat berubah
di seluruh update utama.
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 yang ditampilkan ke UI
Pengujian UI (SafetyCenterActivityTest
, SafetyCenterStatusCardTest
, SafetyCenterQsActivityTest
, dll.)
Pengujian ini memastikan:
- Pengalihan ke Pusat Keamanan dengan parameter tertentu berfungsi sebagaimana mestinya, misalnya, pengalihan ke masalah tertentu. Lihat Pengalihan ke Pusat Keamanan.
- UI menampilkan status keamanan yang mendasarinya dengan 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 untuk memperluasnya 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 situasi tertentu.
- Mengetuk tombol pindai ulang akan mengambil data baru.
Pengujian serupa dilakukan untuk Pusat Keselamatan. 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 profil 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.