उपयोगकर्ता पैरामीटर

Android Comms Test Suite (ACTS) में, ACTS कॉन्फ़िगरेशन में जाकर टेस्ट की अतिरिक्त जानकारी या पैरामीटर दिए जा सकते हैं. उपयोगकर्ता पैरामीटर, JSON फ़ॉर्मैट में हो सकते हैं. साथ ही, इन्हें Python में सही टाइप में डिकोड किया जाता है. उदाहरण के लिए, dict, list, और str. उपयोगकर्ता पैरामीटर दो जगहों पर तय किए जा सकते हैं:

  • कॉन्फ़िगरेशन के रूट लेवल पर

    {
        "testbed": {
            ...
        },
        "my_user_param1": "my_value",
        "my_user_param2": {"another": ["value"]}
    }
    
  • टेस्टबेड में

    {
        "testbed": {
            "my_testbed": {
                "AndroidDevice": [...],
                ...,
                "my_user_param1": "my_value",
                "my_user_param2": {"another": ["value"]}
            }
        },
    }
    

अगर रूट लेवल और टेस्टबेड में कोई उपयोगकर्ता पैरामीटर मिलता है, तो testbed के हिसाब से तय की गई वैल्यू का इस्तेमाल किया जाता है.

ACTS टेस्ट क्लास में, उपयोगकर्ता इस जानकारी को पढ़ सकते हैं:

class MyActsTest
    def setup_class(self):
        self.my_param_1 = self.user_params['my_user_param1']

        # Get the parameter with a default value if not found within config.
        self.my_param_2 = self.user_params.get('my_user_param2', default={})

उपयोगकर्ता के लिए खास पैरामीटर

यहां ऐसे उपयोगकर्ता पैरामीटर की सूची दी गई है जो ज़रूरी नहीं हैं, लेकिन काम के हैं. इनमें ACTS में खास प्रॉपर्टी होती हैं:

  • consecutive_failure_limit: एक ही टेस्ट क्लास के बाकी टेस्ट को ब्लॉक करने से पहले, लगातार टेस्ट फ़ेल होने की संख्या. अगर इसके बारे में नहीं बताया गया है, तो डिफ़ॉल्ट तौर पर यह काम होता है: सभी टेस्ट करना. भले ही, कोई गड़बड़ी न हो. यह पैरामीटर उन मामलों में काम आता है जहां टेस्टबेड को गलत तरीके से कॉन्फ़िगर किया गया है. इस वजह से, सभी टेस्ट पूरे नहीं हो पाते.

  • quiet_tests: टेस्ट क्लास या टेस्ट केस की सूची, जो test_class या test_class.test_name फ़ॉर्मैट में दी गई है. उदाहरण के लिए, BleScanApiTest या BleScanApiTest.test_start_ble_scan_with_default_settings. इस सूची में मौजूद हर टेस्ट केस के लिए, टेस्ट में हुई गड़बड़ी के आर्टफ़ैक्ट जनरेट नहीं होंगे. उदाहरण के लिए, गड़बड़ी की रिपोर्ट, qxdm लॉग. अगर टेस्ट क्लास का नाम, टेस्ट केस के बिना दिया गया है, तो उस क्लास के सभी टेस्ट केस, गड़बड़ी की रिपोर्ट को स्किप करने के लिए सेट हो जाते हैं. इस फ़्लैग का इस्तेमाल, उन समस्या वाले टेस्ट केस के आउटपुट को दबाने के लिए किया जा सकता है जिनके काम न करने की संभावना है.

  • retry_tests: टेस्ट क्लास या टेस्ट केस की सूची, जो test_class या test_class.test_name फ़ॉर्मैट में दी गई है. उदाहरण के लिए, BleScanApiTest या BleScanApiTest.test_start_ble_scan_with_default_settings. इस सूची में दिए गए हर टेस्ट केस के लिए, अगर कोई टेस्ट फ़ेल होता है, तो एक बार फिर से कोशिश की जाती है. अगर जांच दूसरी बार भी पूरी नहीं होती है, तो उसे 'विफल' के तौर पर मार्क किया जाता है.