เขียนการทดสอบเชลล์ใน Trade Federation

หน้านี้อธิบายวิธีเขียนการทดสอบเชลล์ หากทดสอบด้วยสคริปต์เชลล์ได้ คุณจะเรียกใช้ด้วย ExecutableHostTest ได้ ExecutableHostTest รองรับการกรองการทดสอบและ การแบ่งการทดสอบ

เขียนการทดสอบเชลล์

สคริปต์เชลล์หลักจะทำงานในโฮสต์ คุณต้องพุชสคริปต์หรือไบนารีอื่นๆ ที่จะเรียกใช้ใน อุปกรณ์และไฟล์ข้อมูลที่จำเป็นไปยังอุปกรณ์ก่อน ซึ่งทำได้โดยเป็นส่วนหนึ่งของสคริปต์หลักหรือใช้ PushFilePreparer

หากการทดสอบมีโมดูลไบนารีของอุปกรณ์ที่ควรติดตั้งควบคู่ไปกับการทดสอบ ให้ระบุโมดูลเหล่านั้นด้วยพร็อพเพอร์ตี้ data_device_bins

sh_test {
    name: "module-name",
    ...
    data_device_bins: ["target-name"],
}

การทดสอบเชลล์ ziptool-tests เป็นตัวอย่างหนึ่ง

ผลการทดสอบแต่ละรายการจะอิงตามสถานะการออกของสคริปต์หลัก การทดสอบอาจหมดเวลาหากมีการระบุ per-binary-timeout

กำหนดค่าการทดสอบเชลล์

ในการกำหนดค่า XML ของ Tradefed การทดสอบเชลล์จะทำงานผ่านExecutableHostTest runner

<test class="com.android.tradefed.testtype.binary.ExecutableHostTest" >
    <option name="binary" value="your-test-script.sh" />
    <option name="relative-path-execution" value="true" />
    <option name="per-binary-timeout" value="15m" />
</test>

ตั้งค่าสคริปต์หลักสำหรับการทดสอบเป็นค่าของตัวเลือก binary ดูExecutableHostTestตัวเลือกอื่นๆ

หากสคริปต์ต้องใช้สิทธิ์รูท ให้เพิ่ม RootTargetPreparer ลงในการกำหนดค่า