ACTS की बेहतर गाइड

इस गाइड में Android Comms Test Suite (ACTS) की जांच करने का तरीका बताया गया है.

कोड पाएं

ACTS का सबसे अप-टू-डेट वर्शन, Android ओपन सोर्स प्रोजेक्ट (AOSP) /platform/tools/test/connectivity/ में डेटा स्टोर करने की जगह में पाया जा सकता है.

कोड को सिंक करने के तरीके के बारे में जानने के लिए, सोर्स डाउनलोड करना और Android डेवलपर कोडलैब देखें. कोड सिंक करते समय, मुख्य ब्रांच को सिंक करें. टैग किए गए बिल्ड को सिंक न करें.

ध्यान दें कि ACTS डाउनलोड करते समय, आपको पूरे Android डेटा स्टोर करने की जगह को सिंक करने की ज़रूरत नहीं है. सिर्फ़ ACTS को सिंक करने के लिए, repo init निर्देश चलाने के बाद, यह चलाएं:

repo sync platform/tools/test/connectivity

ACTS को <repo>/tools/test/connectivity/acts/ में देखा जा सकता है.

एनवायरमेंट का सेटअप

यह पक्का करने के लिए कि ACTS के पास सेटअप के लिए ज़रूरी डिपेंडेंसी हैं, नीचे दिए गए Python 3 सेटअप टूल इंस्टॉल करें:

sudo apt-get install python3-setuptools
sudo apt-get install python3-pip
sudo apt-get install adb fastboot
sudo pip3 install --upgrade pip setuptools
# Needed due to an on-going bug.
sudo apt-get install protobuf-compiler

ACTS इंस्टॉल करें

<repo>/tools/test/connectivity/acts/framework में मौजूद setup.py स्क्रिप्ट, बाकी डिपेंडेंसी और ACTS खुद इंस्टॉल करती है.

ACTS पर या उसके साथ लगातार डेवलपमेंट के लिए, नीचे दिया गया कमांड चलाएं:

cd <repo>/tools/test/connectivity/acts/framework/
sudo python3 setup.py develop
cd -

अगर आपको सिर्फ़ टेस्ट चलाने हैं, तो इसके बजाय इस निर्देश को चलाएं:

cd <repo>/tools/test/connectivity/acts/framework/
sudo python3 setup.py install
cd -

इंस्टॉल होने की पुष्टि करें

सेटअप करने के बाद, पक्का करें कि आपके टर्मिनल में act.py का इस्तेमाल किया जा सकता हो. साथ ही, Python में ACTS मॉड्यूल इंपोर्ट किए जा सकें. उदाहरण के लिए:

act.py -h
usage: act.py [-h] -c <PATH> [--test_args Arg1 Arg2 ... ]
python3
>>> from acts.controllers import android_device
>>> device_list = android_device.get_all_instances()

इंस्टॉल किए बिना चलाएं

उपयोगकर्ता, पैकेज को सीधे इंस्टॉल किए बिना भी ACTS चला सकते हैं. सिर्फ़ <repo>/tools/test/connectivity/acts/framework से इंपोर्ट करने के लिए, Python पाथ में बदलाव करना ज़रूरी है. ACTS चलाने से पहले, ACTS इंस्टॉल किए बिना ACTS की सभी ज़रूरी डिपेंडेंसी इंस्टॉल करने के लिए setup.py install_deps चलाएं. अगर आपके मशीन पर ACTS का कोई मौजूदा वर्शन मौजूद है, तो sudo setup.py uninstall चलाएं.

ACTS चलाने के लिए, इनमें से किसी एक निर्देश का इस्तेमाल करें:

  • cd <repo>/tools/test/connectivity/acts/framework; acts/bin/act.py
    
  • export PYTHONPATH=<repo>/tools/test/connectivity/acts/framework; acts/bin/act.py
    

ACTS ने -c और -tc फ़्लैग का अनुरोध करने वाले मैसेज भेजे. ज़्यादा जानकारी के लिए, ACTS टेस्ट कॉन्फ़िगर करना देखें.

वर्चुअल एनवायरमेंट में ACTS सेट अप करें

ACTS के अन्य इंस्टॉलेशन से अपने इंस्टॉलेशन को अलग करने के लिए, आपको वर्चुअल एनवायरमेंट में ACTS इंस्टॉल करना चाहिए. यहां दिया गया तरीका यह मानता है कि आपके पास ci.android.com पर aosp-main का acts_test.zip है या आपके पास सोर्स का सीधा ऐक्सेस है.

  1. ACTS पाएं.

    बिल्ड पब्लिश कर दिए गए हैं. ज़्यादा जानकारी के लिए, Android लगातार इंटिग्रेशन देखें. ci.android.com पर मौजूद बिल्ड से ZIP फ़ाइलें निकाली जा सकती हैं. test_suites_x86_64 टारगेट ढूंढें.

    acts_test.zip फ़ाइल, 'आर्टफ़ैक्ट' टैब में मौजूद है. इस उदाहरण के लिए, मान लें कि acts_test.zip को /tmp/acts_test.zip में डाउनलोड किया गया है.

    अगर आपके पास सोर्स कोड का ऐक्सेस है, तो उसका इस्तेमाल किया जा सकता है.

  2. अपनी मशीन पर virtualenv इंस्टॉल करें.

    अगर आपने पहले से ऐसा नहीं किया है, तो virtualenv को इंस्टॉल करने के लिए इनका इस्तेमाल करें:

    python3 -m pip install -U --user virtualenv
    
  3. वर्चुअल एनवायरमेंट बनाएं और उसे चालू करें (इस उदाहरण के लिए, /tmp/my_virtualenv में). इससे यह पक्का होता है कि virtualenv डायरेक्ट्री में नए पैकेज इंस्टॉल किए गए हैं.

    python3 -m virtualenv /tmp/my_virtualenv
    source /tmp/my_virtualenv/bin/activate
    
  4. ACTS इंस्टॉल करें. नीचे दिया गया निर्देश चलाएं.

    unzip /tmp/acts_test.zip -d /tmp/my_virtualenv/acts
    cd /tmp/my_virtualenv/acts/tools/test/connectivity/acts/framework/
    python3 setup.py install
    

    अगर आपके पास सीधे तौर पर कोड का ऐक्सेस है, तो अनज़िप करने के चरण को स्किप करें:

    cd /path/to/acts/framework
    python3 setup.py install
    
  5. कहीं से भी ACTS चलाएं.

    act.py -c <config> ...
    
  6. जांच पूरी होने के बाद, वर्चुअल एनवायरमेंट छोड़ दें.

    deactivate
    

Android डिवाइस का फ़्लैश चालू करें (ज़रूरी नहीं)

अगर आपको डिवाइस के लिए सिस्टम को मिलने वाले खास कंट्रोल की सुविधा चाहिए, तो डिवाइस को userdebug बिल्ड के साथ फ़्लैश करें.

डिवाइस को फ़्लैश करने के लिए, Android Flash टूल (flash.android.com/) का इस्तेमाल करें. ज़्यादा जानकारी के लिए, Android Flash Tool पर दिया गया दस्तावेज़ देखें.

SL4A इंस्टॉल करें (ज़रूरी नहीं, सुझाया गया)

अगर userdebug बिल्ड वाले डिवाइस का इस्तेमाल किया जा रहा है, तो आपके पास SL4A का इस्तेमाल करके, अपने डिवाइस के लिए सिस्टम से मिलने वाले खास अधिकारों को कंट्रोल करने का विकल्प होता है. अगर आपके टेस्ट में डिवाइस पर SL4A का इस्तेमाल नहीं होता है, तो इस सुविधा को बंद करने के लिए, ACTS कॉन्फ़िगरेशन में skip_sl4a फ़्लैग को सेट किया जा सकता है.

"AndroidDevice": [{"serial": "standardized serial number reference", "skip_sl4a": true}, ...]

SL4A APK पाने के लिए, Android के लिए स्क्रिप्टिंग लेयर पर दिए गए निर्देशों का पालन करें.