Android Comms टेस्ट सुइट
(सेक्शन)
कनेक्टिविटी स्टैक, जैसे कि वाई-फ़ाई, ब्लूटूथ, और
मोबाइल सेवाएं. टेस्टिंग टूल के लिए ज़रूरी है
adb और Python. कॉन्टेंट बनाने
यह टूल tools/test/connectivity/acts
में मौजूद है.
इस पेज पर, टेलीफ़ोनी सुविधा की बुनियादी जांच करने का तरीका बताया गया है इंच Android ओपन सोर्स प्रोजेक्ट (AOSP) दो फ़ोन वाले उपयोगकर्ता के लिए.
ज़रूरी शर्तें
ACTS टेलीफ़ोनी टेस्ट चलाने के लिए, आपके पास Android डेटा स्टोर करने की पूरी जगह का ऐक्सेस होना चाहिए और उन डिवाइसों पर userडीबग बिल्ड इंस्टॉल करें जिनकी आपको जांच करनी है.
Android डेटा स्टोर करने की जगह डाउनलोड करना
इसमें दिए गए निर्देशों का पालन करें इसके लिए, सोर्स डाउनलोड करें एक ऐसी मशीन पर Android रिपॉज़िटरी डाउनलोड करेगा जिसका यूएसबी कनेक्शन जिन्हें टेस्ट करना है.
- एओएसपी, कई गीगाबाइट (जीबी) वाला कोडबेस है. इसका लगातार विकास हो रहा है. अपने
डाउनलोड करने में लगने वाले समय के हिसाब से.
- अगर मशीन का साइज़ सीमित है, तो
repo init
में--depth=1
जोड़ें आदेश.
- अगर मशीन का साइज़ सीमित है, तो
- आने वाले समय में ACTS टूल से जुड़े अपडेट पाने के लिए, Android की रूट डायरेक्ट्री पर जाएं:
repo sync tools/test/connectivity
का इस्तेमाल करें- और
repo sync external/sl4a
डिवाइसों पर उपयोगकर्ता डीबग बिल्ड की पुष्टि करें
अपने टेस्ट डिवाइसों पर, Android का Userडीबग वर्शन इंस्टॉल करें.
- डेटा स्टोर करने की जगह बनाने के लिए, Android बनाएं.
- इसमें बताए गए तरीके से डिवाइस को फ़्लैश करें
डिवाइस का फ़्लैश चालू करें.
adb shell getprop ro.build.type
निर्देशuserdebug
दिखना चाहिए.- अगर
ro.build.type
उपलब्ध नहीं है, तो Userडीबग बिल्ड की मदद से, adb Shell को रूट (टर्मिनल#
) के तौर पर चुनें.
SL4A बनाएं और इंस्टॉल करें
Android (SL4A) के लिए स्क्रिप्टिंग लेयर बनाने और इंस्टॉल करने के लिए, निर्देशों का पालन करें इस अवधि के लिए स्क्रिप्टिंग लेयर में Android. Android बिल्ड में डिफ़ॉल्ट रूप से SL4A बिल्ड जोड़ना सेक्शन ज़रूरी नहीं है.
SLA4 बनाने के बाद, आखिरी लॉग मैसेज में
sl4a.apk
फ़ाइल है, जिसे आपको सभी डिवाइसों पर इंस्टॉल करना होगा. यहां इसका एक उदाहरण दिया गया है
लॉग मैसेज दिखेगा:
Copy: out/target/path/to/sl4a.apk
जांच के लिए डिवाइस कॉन्फ़िगर करें
ACTS बिल्ड/टूल से जुड़ी इन ज़रूरी शर्तों का इस्तेमाल करके डिवाइसों को कॉन्फ़िगर करें:
अगर ADB वेंडर कुंजियां उपलब्ध नहीं हैं, तो इस कंप्यूटर पर भरोसा करें पॉप-अप पर टैप करें DUT दिखाई देता है. अगर ADB वेंडर कुंजियां उपलब्ध हैं:
- ADB वेंडर कुंजियां और ड्राइवर, DUT के लिए यूनीक होने चाहिए.
- यूएसबी डीबग करने की सुविधा को हमेशा चालू रखने के लिए, आपके सोर्स ट्री में मौजूद ADB वेंडर कुंजियां
का उपयोग करके
~/.bashrc
(या इसके बराबर) में जोड़ा जाना चाहिएexport ADB_VENDOR_KEYS=/path/to/directory/with/vendor/keys
जहां/path/to/directory
आपका होस्ट. ADB से जुड़ी समस्याओं को हल करने के लिए, इसे देखें हार्डवेयर डिवाइस पर ऐप्लिकेशन चलाएं.
यूएसबी डीबग करने की अनुमति दें: जब adb ड्राइवर इंस्टॉल किए जाते हैं, तो adb डिवाइस ट्रिगर हो सकते हैं USB डीबगिंग की अनुमति देने के लिए डिवाइस पर एक प्रॉम्प्ट.
$ adb install -r <ANDROID_ROOT>/path/to/sl4a.apk
का इस्तेमाल करकेsl4a.apk
इंस्टॉल करेंपक्का करें कि फ़ोन, टेस्ट सर्वर से यूएसबी 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
ACTS इंस्टॉल करें
चलाएं:
cd <ANDROID_ROOT>/tools/test/connectivity/acts/framework/
sudo python3 setup.py develop
cd -
इंस्टॉलेशन की पुष्टि करने के लिए, act.py -h
चलाएं. यह उपलब्ध डिवाइसों की सूची प्रिंट करता है
निर्देश देखें.
कॉन्फ़िगरेशन फ़ाइल लिखें
जांच करने के लिए, आपको कॉन्फ़िगरेशन की जानकारी वाली फ़ाइल बनानी होगी. यह रही
उदाहरण .config
फ़ाइल. इससे मिलती-जुलती फ़ाइल, Android रिपॉज़िटरी में उपलब्ध है
tools/test/connectivity/acts/framework/sample_config.json
से कम. बदलें
कम से कम जानकारी देने के लिए डिवाइस के सीरियल नंबर वाला XXXXXXX
ACTS को टेलीफ़ोनी टेस्ट चलाना होगा.
{
"_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
|
उन खास डिवाइसों की सूची जिन्हें टेस्ट के ज़रिए टारगेट किया गया है
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है ध्यान दें: सूची में कई डिवाइस हो सकते हैं. जो जांच चलती है एक-दूसरे को कॉल करने वाले फ़ोन के लिए दो डिवाइस होने की उम्मीद होती है और हो सकता है कि दो डिवाइस हों कम हैं. अगर दो डिवाइस सूची में दिए गए हैं और जांच में सिर्फ़ एक डिवाइस की उम्मीद है, तो पहले डिवाइस पर टेस्ट किया जाता है. |
(testbed)(AndroidDevice) serial
|
डिवाइस का सीरियल नंबर (adb devices से प्रिंट किया गया)
|
(testbed)(AndroidDevice) 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
फ़ाइल
Android में tools/test/connectivity/acts/framework/acts/config/entries.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
#
(टेस्ट इटरेशन) जोड़ें.