परीक्षण आवश्यकताएं

जीटीएस परीक्षण ( GtsSafetyCenterTestCases )

जीटीएस परीक्षण कॉन्फ़िगरेशन फ़ाइल पर बाधाएँ डालते हैं। कॉन्फ़िगरेशन फ़ाइल अद्यतन करें देखें. यदि डिवाइस सुरक्षा केंद्र का समर्थन नहीं करता है तो डिवाइस को इन परीक्षणों से छूट दी गई है।

बाधाएँ इस प्रकार हैं:

  • कम से कम सात सुरक्षा केंद्र स्रोत समूह होने चाहिए, जो असंशोधित या डिफ़ॉल्ट स्थिति में रहने चाहिए। कुछ विशिष्ट फ़ील्ड जैसे स्रोत शीर्षक, प्रारंभिक प्रदर्शन स्थिति और सारांश कभी-कभी ओवरलेएबल स्ट्रिंग्स द्वारा समर्थित होते हैं और इन्हें संशोधित किया जा सकता है।
  • GoogleAppSecuritySources के लिए:

    • GooglePlayProtect सुरक्षा स्रोत को हटाएं या संशोधित न करें.
    • आप GoogleAppProtectionService सुरक्षा स्रोत को हटा या बदल सकते हैं। यदि यह मौजूद है:
      • इसे लॉगिंग का समर्थन करना चाहिए.
      • यदि पैकेज का नाम अपरिवर्तित है, तो उसमें Android 13 में initialDisplayState="hidden" होना चाहिए; एंड्रॉइड 14 में, इसके बजाय यह issue-only-safety-source होना चाहिए और deduplicationGroup अपरिवर्तित रहना चाहिए।
      • यदि पैकेज का नाम बदला गया है, तो उसे "android.app.role.SYSTEM_APP_PROTECTION_SERVICE" भूमिका निभानी होगी; इसके अतिरिक्त एंड्रॉइड 14 में इसमें deduplicationGroup नहीं होना चाहिए।
  • AndroidLockScreenSources के लिए:

    • समूह का summary उदाहरण आवश्यक है और आप इसे स्ट्रिंग ओवरले सहित संशोधित कर सकते हैं।
    • कम से कम एक सुरक्षा स्रोत अवश्य होना चाहिए.
    • पहले सुरक्षा स्रोत का उद्देश्य वह स्रोत होना है जो लॉक स्क्रीन सेटिंग्स को नियंत्रित करता है और इसे SEVERITY_LEVEL_RECOMMENDATION ( maxSeverityLevel="300" या पीली प्रविष्टि या चेतावनी कार्ड तक) से अधिक गंभीर मुद्दों या प्रविष्टियों को आगे बढ़ाने में सक्षम नहीं होना चाहिए। Android 14 में, deduplicationGroup अपरिवर्तित रहना चाहिए।
    • अन्य सुरक्षा स्रोतों का उद्देश्य बायोमेट्रिक अनलॉक तंत्र से संबंधित स्रोत होना है और उनमें maxSeverityLevel="0" होना चाहिए।
  • Android 13 में, GoogleAccountSources , GoogleDeviceFinderSources , या AndroidAdvancedSources को संशोधित न करें। Android 14 में, आप इन समूहों में पेश किए गए कुछ नए स्रोतों को हटा सकते हैं (जैसे बैकअप और पुनर्स्थापना), आप AndroidAdvancedSources समूह में नए स्थिर स्रोत भी जोड़ सकते हैं।

  • GoogleUpdateSources के लिए:

    • आप GoogleSecurityUpdates के लिए intentAction बदल सकते हैं और इसे स्ट्रिंग ओवरले के साथ संशोधित कर सकते हैं।
    • GooglePlaySystemUpdate संशोधित न करें.
  • AndroidPrivacySources के लिए:

    • आप कुछ स्रोतों को जोड़, हटा या संशोधित कर सकते हैं, जब तक कि वे issue-only हों।
    • उन्हें packageName="com.google.android.permissioncontroller" रखना होगा।
    • शेष AndroidPrivacySources स्रोतों को संशोधित न करें।
  • शेष सुरक्षा स्रोत समूहों के लिए (यदि कोई हो):

    • समूहों में summary या statelessIconType नहीं होना चाहिए, जिसके परिणामस्वरूप SAFETY_SOURCES_GROUP_TYPE_RIGID समूह (एंड्रॉइड 14 में SAFETY_SOURCES_GROUP_TYPE_STATELESS ) बनता है।
    • प्रत्येक समूह के भीतर प्रत्येक स्रोत या तो स्थिर होना चाहिए या maxSeverityLevel="0" होना चाहिए, उदाहरण के लिए, ग्रे या हरी प्रविष्टियाँ भेजने की अनुमति है लेकिन कोई समस्या नहीं है।

सीटीएस परीक्षण ( CtsSafetyCenterTestCases )

Android 13 से शुरू होकर, CTS परीक्षण उन सभी OEM पर लागू होते हैं जो PermissionController का समर्थन करते हैं।

कॉन्फ़िगरेशन फ़ाइल परीक्षण ( XmlConfigTest )

ये परीक्षण सुनिश्चित करते हैं:

  • पार्स की गई XML कॉन्फ़िगरेशन फ़ाइल सुरक्षा केंद्र द्वारा पार्स और उजागर किए गए कॉन्फ़िगरेशन से मेल खाती है और यह पार्सिंग सफल है।
  • यदि आशय क्रिया android.settings.PRIVACY_ADVANCED_SETTINGS XML फ़ाइल में मौजूद है, तो यह क्रिया हल होनी चाहिए।
  • यदि आशय क्रिया android.settings.PRIVACY_CONTROLS XML फ़ाइल में मौजूद है, तो यह क्रिया हल होनी चाहिए।

यूआई परीक्षण ( SafetyCenterActivityTest )

ये परीक्षण सुनिश्चित करते हैं:

  • android.intent.action.SAFETY_CENTER इंटेंट एक्शन सुरक्षा केंद्र सक्षम होने पर सुरक्षा और गोपनीयता सेटिंग्स स्क्रीन को हल करता है और खोलता है, और सुरक्षा केंद्र अक्षम होने पर सेटिंग्स स्क्रीन खोलता है।

एपीआई परीक्षण ( SafetyCenterManagerTest )

SafetyCenterManagerTest API परीक्षणों का लक्ष्य यह सुनिश्चित करना है कि सुरक्षा केंद्र API अपेक्षा के अनुरूप काम कर रहे हैं।

ये परीक्षण निम्नलिखित सुनिश्चित करते हैं:

  • SafetyCenterManager.isSafetyCenterEnabled को संबंधित DeviceConfig ध्वज द्वारा नियंत्रित किया जाता है।
  • अक्षम होने पर, सुरक्षा केंद्र एपीआई नो-ऑप।
  • सुरक्षा केंद्र एपीआई केवल तभी उपयोग योग्य होते हैं जब संबंधित अनुमतियाँ आयोजित की जाती हैं।
  • सुरक्षा केंद्र को डेटा केवल अंतर्निहित कॉन्फ़िगरेशन के अनुसार ही प्रदान किया जा सकता है।
  • जब सुरक्षा केंद्र को डेटा प्रदान किया जाता है, तो यह तदनुसार सामने आता है।
  • एपीआई सुरक्षा केंद्र स्रोत एपीआई का उपयोग करें में वर्णित विशिष्टताओं से मेल खाते हैं, उदाहरण के लिए, व्यवहार को ताज़ा करना या पुनः स्कैन करना, डेटा सेट करना या साफ़ करना और त्रुटियों की रिपोर्टिंग करना।
  • यूआई के संपर्क में आने वाले आंतरिक एपीआई ठीक से काम कर रहे हैं, उदाहरण के लिए, डेटा को सुरक्षा केंद्र द्वारा उचित रूप से मर्ज किया गया है और डेटा को ताज़ा किया जा सकता है।

सुरक्षा केंद्र असमर्थित परीक्षण ( SafetyCenterUnsupportedTest )

यह परीक्षण सुनिश्चित करता है कि सुरक्षा केंद्र तब अक्षम हो जाता है जब डिवाइस इसका समर्थन नहीं करता है जब फ्रेमवर्क XML कॉन्फ़िगरेशन फ़ाइल में समर्थन अक्षम होता है।

यदि डिवाइस सुरक्षा केंद्र का समर्थन करता है, तो यह परीक्षण नहीं चलता है। यदि डिवाइस सुरक्षा केंद्र का समर्थन नहीं करता है, तो केवल यह परीक्षण और डेटा क्लास परीक्षण ही चलते हैं।

यह परीक्षण निम्नलिखित सुनिश्चित करता है:

  • android.intent.action.SAFETY_CENTER आशय क्रिया सेटिंग्स स्क्रीन खोलती है।
  • SafetyCenterManager.isSafetyCenterEnabled false रिटर्न देता है।
  • अधिकांश सुरक्षा केंद्र एपीआई कॉल करने पर प्रतिक्रिया नहीं देते हैं।

डेटा वर्ग परीक्षण ( SafetySourceDataTest , SafetySourceIssueTest , आदि)

SafetySourceDataTest और SafetySourceIssueTest जैसे डेटा वर्ग परीक्षण यह सुनिश्चित करते हैं कि सुरक्षा केंद्र द्वारा उजागर किए गए डेटा वर्ग इच्छित तरीके से काम कर रहे हैं, उदाहरण के लिए, SafetySourceData , SafetySourceIssue और अन्य संबंधित आंतरिक वर्ग।

एमटीएस परीक्षण ( SafetyCenterFunctionalTestCases और अन्य)

ये परीक्षण मेनलाइन अपडेट में चलाए जाते हैं और उन सभी OEM पर लागू होते हैं जो PermissionController का समर्थन करते हैं। इन परीक्षणों द्वारा लागू की गई आवश्यकताएँ मेनलाइन अपडेट में बदल सकती हैं।

एपीआई परीक्षण ( SafetyCenterManagerTest )

ये परीक्षण सीटीएस परीक्षण SafetyCenterManagerTest के समान हैं, हालांकि वे उन आवश्यकताओं का परीक्षण करते हैं जो मेनलाइन अपडेट में बदल सकते हैं, उदाहरण के लिए:

  • यूआई के संपर्क में आने वाले आंतरिक एपीआई द्वारा लौटाए गए डेटा की वास्तविक सामग्री की जाँच करना

यूआई परीक्षण ( SafetyCenterActivityTest , SafetyCenterStatusCardTest , SafetyCenterQsActivityTest , आदि)

ये परीक्षण सुनिश्चित करते हैं:

  • विशिष्ट मापदंडों के साथ सुरक्षा केंद्र पर पुनर्निर्देशन उद्देश्य के अनुसार काम करता है, उदाहरण के लिए, किसी विशिष्ट मुद्दे पर पुनर्निर्देशन। सुरक्षा केंद्र पर पुनर्निर्देशन देखें।
  • यूआई सही अंतर्निहित सुरक्षा स्थिति प्रदर्शित करता है।
  • यूआई अलग-अलग स्क्रीन पर नेविगेट करने की अनुमति देता है।
  • SafetySourceIssue द्वारा निर्दिष्ट किए जाने पर यूआई सुरक्षा मुद्दों को सीधे सुरक्षा केंद्र स्क्रीन से हल करने की अनुमति देता है।
  • यूआई एक आइटम में कई चेतावनी कार्डों को संक्षिप्त करता है और इसे वापस कई चेतावनी कार्डों में विस्तारित करने की अनुमति देता है।
  • जब संबंधित सुरक्षा केंद्र स्रोतों के लिए सुरक्षा केंद्र पृष्ठ खोला जाता है तो डेटा ताज़ा हो जाता है।
  • पुनः स्कैन बटन केवल विशिष्ट परिस्थितियों में ही दिखाई देता है।
  • पुनः स्कैन बटन टैप करने से नया डेटा प्राप्त होता है।
  • सुरक्षा केंद्र के लिए भी इसी तरह के परीक्षण आयोजित किए जाते हैं। अपने ऐप के लिए कस्टम त्वरित सेटिंग्स टाइल्स बनाएं देखें

  • अतिरिक्त किनारे वाले मामले जैसे त्रुटि स्थिति और लंबित स्थिति।

बहु उपयोगकर्ता परीक्षण ( SafetyCenterMultiUsersTest )

इन परीक्षणों का लक्ष्य यह सुनिश्चित करना है कि जब एकाधिक उपयोगकर्ताओं या प्रोफ़ाइल के लिए डेटा प्रदान किया जाता है तो एपीआई उचित रूप से काम करता है। एकाधिक उपयोगकर्ताओं और प्रोफ़ाइलों के लिए डेटा प्रदान करें देखें। यह सेटअप एक आंतरिक लाइब्रेरी का उपयोग करके हासिल किया जाता है जो बेडस्टेड का उपयोग करके डिवाइस पर अलग-अलग उपयोगकर्ताओं और प्रोफाइल को सेट करने की सुविधा देता है।

यह परीक्षण निम्नलिखित सुनिश्चित करता है:

  • यदि उपयोगकर्ता का डेटा मौजूद है तो उसे उससे संबंधित प्रबंधित प्रोफ़ाइल के साथ मर्ज कर दिया जाता है।
  • केवल वे स्रोत जो profile="all_profiles" से चिह्नित हैं, उपयोगकर्ता की प्रबंधित प्रोफ़ाइल में डेटा प्रदान कर सकते हैं।
  • उपयोगकर्ता से संबद्ध प्रत्येक प्रबंधित प्रोफ़ाइल के लिए एक नई प्रविष्टि बनाई जाती है।
  • एक उपयोगकर्ता का डेटा दूसरे असंबद्ध उपयोगकर्ता पर लीक नहीं होता है।