คู่มือ ACTS ขั้นสูง

นี่คือคำแนะนำเกี่ยวกับวิธีการเรียกใช้การทดสอบ Android Comms Test Suite (ACTS)

รับรหัส

ACTS เวอร์ชันล่าสุดสามารถพบได้ในที่เก็บ Android Open Source Project (AOSP) Gerrit ใน /platform/tools/test/connectivity/

สำหรับรายละเอียดเกี่ยวกับวิธีซิงค์โค้ด โปรดดู การดาวน์โหลดซอร์ส และ Codelab สำหรับนักพัฒนาซอฟต์แวร์ 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

สคริปต์ setup.py ที่พบใน <repo>/tools/test/connectivity/acts/framework จะติดตั้งส่วนที่เหลือและ 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 ในเทอร์มินัลของคุณได้ และนำเข้าโมดูล ACTS ใน Python ตัวอย่างเช่น:

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 ได้โดยไม่ต้องติดตั้งแพ็คเกจโดยตรง ขั้นตอนเดียวที่ต้องดำเนินการคือการแก้ไขเส้นทาง Python ที่จะนำเข้าจาก <repo>/tools/test/connectivity/acts/framework ก่อนที่จะรัน ACTS ให้รัน setup.py install_deps เพื่อติดตั้งการขึ้นต่อกันที่จำเป็นทั้งหมดโดย ACTS โดยไม่ต้องติดตั้ง ACTS หากมี 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 ในสภาพแวดล้อมเสมือน ขั้นตอนต่อไปนี้ถือว่าคุณมี acts_test.zip จาก aosp-main บน ci.android.com หรือมีสิทธิ์เข้าถึงแหล่งที่มาโดยตรง

  1. รับการกระทำ

    มีการเผยแพร่งานสร้างแล้ว สำหรับข้อมูลเพิ่มเติม โปรดดูที่ การผสานรวมอย่างต่อเนื่องของ Android คุณสามารถดึงไฟล์ zip จากบิลด์บน ci.android.com มองหาเป้าหมาย test_suites_x86_64

    ไฟล์ acts_test.zip อยู่ใต้แท็บ Artifacts สำหรับตัวอย่างนี้ สมมติว่า 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 บนอุปกรณ์ คุณสามารถตั้งค่าสถานะ skip_sl4a ในการกำหนดค่า ACTS เพื่อปิดใช้งานคุณสมบัตินี้ได้

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

หากต้องการรับ SL4A APK ให้ทำตามคำแนะนำที่ Scripting Layer สำหรับ Android