การเขียนการทดสอบเชลล์ในสหพันธ์การค้า

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

การเขียนแบบทดสอบเปลือก

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

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

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

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

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

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

ในการกำหนดค่า Tradefed XML การทดสอบเชลล์จะดำเนินการผ่านตัวเรียกใช้ ExecutableHostTest

<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 ในการกำหนดค่า