एंड्रॉइड कॉम्स टेस्ट सूट (एसीटीएस) वाई-फाई, ब्लूटूथ और सेलुलर सेवाओं जैसे कनेक्टिविटी स्टैक का स्वचालित परीक्षण करता है। परीक्षण उपकरण के लिए adb की आवश्यकता होती है। और पायथन, और इसे tools/test/connectivity/acts
में पाया जा सकता है।
यह पृष्ठ वर्णन करता है कि दो फोन वाले उपयोगकर्ता के लिए एंड्रॉइड ओपन सोर्स प्रोजेक्ट (एओएसपी) में उपलब्ध बुनियादी टेलीफोनी परीक्षण कैसे चलाया जाए।
आवश्यक शर्तें
ACTS टेलीफोनी परीक्षण चलाने के लिए, आपके पास पूर्ण एंड्रॉइड रिपॉजिटरी तक पहुंच होनी चाहिए और उन डिवाइसों पर यूजरडिबग बिल्ड इंस्टॉल करना चाहिए जिन्हें आप परीक्षण करना चाहते हैं।
एंड्रॉइड रिपॉजिटरी डाउनलोड करना
किसी ऐसी मशीन पर एंड्रॉइड रिपॉजिटरी डाउनलोड करने के लिए स्रोत डाउनलोड करने के निर्देशों का पालन करें जिसमें उन डिवाइसों के लिए यूएसबी कनेक्शन है जिनका आप परीक्षण करना चाहते हैं।
- AOSP एक मल्टीगीगाबाइट कोडबेस है जो लगातार बढ़ रहा है। डाउनलोड समय की अपनी अपेक्षाओं को तदनुसार समायोजित करें।
- यदि मशीन का आकार सीमित है, तो
repo init
कमांड में--depth=1
जोड़ें।
- यदि मशीन का आकार सीमित है, तो
- ACTS टूलिंग पर भविष्य के अपडेट प्राप्त करने के लिए, Android रूट निर्देशिका पर जाएँ:
-
repo sync tools/test/connectivity
उपयोग करें - और
repo sync external/sl4a
-
उपकरणों पर यूजरडिबग बिल्ड को सत्यापित करना
अपने परीक्षण उपकरणों पर एंड्रॉइड का यूजरडिबग संस्करण स्थापित करें।
- एंड्रॉइड बिल्डिंग में दिए गए निर्देशों का उपयोग करके रिपॉजिटरी बनाएं।
- डिवाइस को फ़्लैश करना में वर्णित अनुसार फ़्लैश करें।
- कमांड
adb shell getprop ro.build.type
userdebug
लौटाना चाहिए। - यदि
ro.build.type
उपलब्ध नहीं है, तो userdebug बिल्ड adb शेल को रूट (टर्मिनल#
) के रूप में चलाने की अनुमति देता है।
- कमांड
SL4A का निर्माण और स्थापना
एंड्रॉइड के लिए स्क्रिप्टिंग लेयर (SL4A) बनाने और स्थापित करने के लिए, एंड्रॉइड के लिए स्क्रिप्टिंग लेयर में दिए गए निर्देशों का पालन करें। डिफ़ॉल्ट रूप से एंड्रॉइड बिल्ड में SL4A बिल्ड जोड़ना अनुभाग वैकल्पिक है।
SLA4 बनाने के बाद, अंतिम लॉग संदेश में sl4a.apk
फ़ाइल का स्थान होता है, जिसे आपको सभी डिवाइस पर इंस्टॉल करने की आवश्यकता होती है। यहां लॉग संदेश का एक उदाहरण दिया गया है:
Copy: out/target/path/to/sl4a.apk
परीक्षण के लिए उपकरणों को कॉन्फ़िगर करना
इन ACTS बिल्ड/टूल आवश्यकताओं का उपयोग करके डिवाइस कॉन्फ़िगर करें:
यदि ADB विक्रेता कुंजियाँ अनुपलब्ध हैं, तो DUT दिखाई देने पर इस कंप्यूटर पॉपअप पर विश्वास करें पर टैप करें। यदि ADB विक्रेता कुंजियाँ उपलब्ध हैं:
- ADB विक्रेता कुंजियाँ और ड्राइवर DUT के लिए अद्वितीय होने चाहिए।
- USB डिबगिंग को हमेशा सक्षम करने के लिए, आपके स्रोत ट्री में ADB विक्रेता कुंजी
export ADB_VENDOR_KEYS=/path/to/directory/with/vendor/keys
उपयोग करके~/.bashrc
(या समतुल्य) में जोड़ा जाना चाहिए जहां/path/to/directory
है मेजबान पर आपका पूर्णतः योग्य पथ। ADB के समस्या निवारण के लिए, हार्डवेयर डिवाइस पर ऐप्स चलाएँ देखें।
यूएसबी डिबगिंग की अनुमति दें: जब एडीबी ड्राइवर स्थापित होते हैं, तो एडीबी डिवाइस यूएसबी डिबगिंग की अनुमति देने के लिए डिवाइस पर एक संकेत ट्रिगर कर सकते हैं।
$ adb install -r <ANDROID_ROOT>/path/to/sl4a.apk
उपयोग करकेsl4a.apk
इंस्टॉल करेंसुनिश्चित करें कि फ़ोन परीक्षण सर्वर से USB 2.0 कनेक्शन का उपयोग करते हैं।
ये परीक्षण लाइव सेल नेटवर्क पर निर्भर करते हैं, इसलिए फोन में सिम कार्ड डालें और फोन को ऐसे क्षेत्र में रखें जहां अच्छी सेल सेवा हो।
कॉन्फिग फ़ाइल लिखना में वर्णित अनुसार सभी सिम कार्ड को
.json
फ़ाइल में जोड़ें।
पर्यावरण की स्थापना
पर्यावरण स्थापित करने से पहले, सत्यापित करें कि Python 3.4+ स्थापित है।
दौड़ना:
sudo apt-get install python3-setuptools
sudo apt-get install python3-pip
sudo pip3 install --upgrade pip setuptools
sudo apt-get install protobuf-compiler
अधिनियम स्थापित करना
दौड़ना:
cd <ANDROID_ROOT>/tools/test/connectivity/acts/framework/
sudo python3 setup.py develop
cd -
इंस्टॉलेशन को सत्यापित करने के लिए, act.py -h
चलाएँ, जो उपलब्ध कमांड की एक सूची प्रिंट करता है।
कॉन्फ़िग फ़ाइल लिखना
परीक्षण चलाने के लिए, आपको कॉन्फ़िगरेशन जानकारी के साथ एक फ़ाइल बनानी होगी। यहां एक उदाहरण .config
फ़ाइल है। एक समान फ़ाइल एंड्रॉइड रिपॉजिटरी में tools/test/connectivity/acts/framework/sample_config.json
अंतर्गत उपलब्ध है। ACTS को टेलीफोनी परीक्षण चलाने के लिए आवश्यक न्यूनतम जानकारी प्रदान करने के लिए XXXXXXX
डिवाइस सीरियल नंबर से बदलें।
{
"_description": "Minimum Telephony Config",
"testbed":
[
{
"_description": "A testbed listing two AndroidDevices for adb.",
"name": "ExampleTestBed",
"AndroidDevice": [{"serial": "XXXXXXX", "adb_logcat_param": "-b all"},
{"serial": "XXXXXXX", "adb_logcat_param": "-b all"}]
}
],
"logpath": "/path/to/logs",
"testpaths": "/path/to/android/repo/tools/test/connectivity",
"sim_conf_file": "/path/to/simcard_list.json"
}
परीक्षण मापदंडों को कॉन्फ़िगर करने के लिए तालिका में कुंजियों का उपयोग करें। अधिक विकल्पों के लिए अतिरिक्त कॉन्फ़िगरेशन विकल्प देखें।
चाबी | कीमत |
---|---|
_description | संपूर्ण कॉन्फ़िगरेशन फ़ाइल की सामग्री पर टिप्पणी करें |
testbed | ऐसे वातावरण की विशिष्टता जिसमें परीक्षण चल सकते हैं |
(परीक्षणबेड) _description | प्रत्येक परीक्षण बिस्तर पर टिप्पणी करें, क्योंकि ACTS व्यक्तिगत परीक्षण बिस्तरों को लक्षित कर सकता है |
(परीक्षणबेड) name | कमांड लाइन से कॉल करने के लिए परीक्षण बिस्तर का नाम |
(परीक्षण किया गया) AndroidDevice | परीक्षण द्वारा लक्षित विशिष्ट उपकरणों की सूची ध्यान दें: सूचीबद्ध कई डिवाइस हो सकते हैं। एक परीक्षण जो एक-दूसरे को कॉल करने वाले फोन चलाता है, उम्मीद करता है कि दो डिवाइस होंगे और कम होने पर विफल हो जाएगा। यदि दो डिवाइस सूचीबद्ध हैं और परीक्षण केवल एक की अपेक्षा करता है, तो वह परीक्षण पहले डिवाइस पर चलाया जाता है। |
(टेस्टबेड)(एंड्रॉइडडिवाइस) serial | डिवाइस का सीरियल नंबर ( adb devices से मुद्रित) |
(टेस्टबेड)(एंड्रॉइडडिवाइस) adb_logcat_param | पैरामीटर जो परीक्षण के दौरान adb logcat कॉल करने पर पारित किए जाते हैं |
logpath | परीक्षण सर्वर पर वह स्थान जहां लॉग सहेजे जाते हैं |
testpaths | परीक्षण केस कोड का स्थान |
sim_conf_file | .json फ़ाइल का स्थान जो उपलब्ध सिम कार्डों को सूचीबद्ध करता हैसिम कार्ड की सूची में कार्ड की आईडी, कार्ड की क्षमताएं, ऑपरेटर और फ़ोन नंबर शामिल हैं। |
{
"sim-card-ID-here": {
"capability": [
"voice",
"ims",
"volte",
"vt",
"sms",
"tethering",
"data"
],
"operator": "tmo",
"phone_num": "12345678901"
},
...
}
आप सिस्टम > फ़ोन के बारे में के अंतर्गत डिवाइस से फ़ोन नंबर खींच सकते हैं। सिम कार्ड आईडी आम तौर पर सिम कार्ड पर मुद्रित होती है, या सिस्टम > फ़ोन के बारे में > सिम स्थिति के अंतर्गत डिवाइस से उपलब्ध होती है। ऑपरेटर स्ट्रिंग tools/test/connectivity/acts_tests/acts_contrib/test_utils/tel/tel_defines.py
पर परिभाषित किया गया है, फिर CARRIER_
खोजें।
अतिरिक्त कॉन्फ़िगरेशन विकल्प
entries.py
रिपॉजिटरी में tools/test/connectivity/acts/framework/acts/config/entries.py
पर स्थित प्रविष्टियाँ.py फ़ाइल में प्रमुख कमांड लाइन कॉन्फ़िगरेशन विकल्पों की परिभाषाएँ हैं।
आप self.user_params.get
खोजकर कोड में परीक्षण-विशिष्ट पैरामीटर भी पा सकते हैं।
चल रहे परीक्षण
कॉन्फ़िगरेशन फ़ाइल लिखे जाने के बाद कमांड लाइन से परीक्षण चलाएँ। हालाँकि कई विकल्प हैं, सबसे सरल है -c filename.config -tc TestCase:name
उपयोग करना। यह उदाहरण minimum.config
नामक कॉन्फ़िग फ़ाइल का उपयोग करता है:
act.py -c minimum.config -tc TelLiveVoiceTest:test_call_mo_voice_general
एक सफल परीक्षण रन में अंतिम आउटपुट संदेश इस प्रकार होना चाहिए:
INFO Summary for test run ExampleTestBed@yyyy-mm-dd_15-23-43-614: Requested 1,
Executed 1, Passed 1, Failed 0, Skipped 0, Error 0
एकाधिक परीक्षण चलाना
एकाधिक फ़ाइलों में विशिष्ट परीक्षण मामलों को चलाने के लिए, एक परीक्षण फ़ाइल बनाएं और इसे ध्वज -tf
के साथ पास करें, जैसा कि नीचे दिए गए उदाहरण प्रतिगमन परीक्षण सूट में दिखाया गया है।
TelLiveVoiceTest:
test_call_mo_voice_general,
test_call_volte_to_volte,
test_call_3g_to_3g
TelLiveDataTest:
test_airplane_mode,
test_4g,
test_3g
TelLiveSmsTest:
test_sms_mo_4g,
test_sms_mt_4g,
test_sms_mo_3g,
test_sms_mt_3g,
test_mms_mo_4g,
test_mms_mt_4g
यह उदाहरण कमांड मानता है कि फ़ाइल का नाम regression_suite.
act.py -c minimum.config -tf regression_suite
कई बार परीक्षण चल रहा है
एक परीक्षण केस ( -tc
) या परीक्षण फ़ाइल ( -tf
) को कई बार चलाने के लिए, कमांड में -ti #
(परीक्षण पुनरावृत्तियों) जोड़ें।