โปรแกรมเรียกใช้การทดสอบคือหน่วยการดำเนินการของโฟลว์การเรียกใช้ ซึ่งเป็นที่ที่ การทดสอบทำงานจริง
อินเทอร์เฟซ
มีการกำหนดโปรแกรมเรียกใช้การทดสอบผ่านอินเทอร์เฟซ IRemoteTest
ซึ่งมีเมธอด run
ง่ายๆ ในการติดตั้งใช้งานที่จะเรียกใช้เมื่อมีการทดสอบ
ซึ่งจะช่วยให้เกิดการกำหนดการทดสอบที่ง่ายที่สุด แต่ในทางปฏิบัติ ผู้เขียนการทดสอบจะต้องมีข้อมูลเพิ่มเติมเพื่อเขียนการทดสอบอย่างถูกต้อง ซึ่งโดยทั่วไปคือข้อมูลการสร้างและอุปกรณ์ ซึ่งเป็นจุดที่อินเทอร์เฟซต่อไปนี้มีประโยชน์
พื้นฐาน
อินเทอร์เฟซทั้ง 2 นี้เป็นอินเทอร์เฟซที่ใช้กันอย่างแพร่หลายมากที่สุดในปัจจุบัน เนื่องจากเป็นตัวแทนของความต้องการพื้นฐานของการทดสอบส่วนใหญ่
- IBuildReceiver
ช่วยให้การทดสอบได้รับออบเจ็กต์
IBuildInfo
ที่สร้างขึ้นในขั้นตอนbuild provider ซึ่งมีข้อมูลและอาร์ติแฟกต์ทั้งหมดที่เกี่ยวข้องกับการตั้งค่าการทดสอบ - IDeviceTest
ช่วยให้ TF รับออบเจ็กต์
ITestDevice
ที่แสดงถึงอุปกรณ์ ภายใต้การทดสอบ และมี API สำหรับโต้ตอบกับออบเจ็กต์ดังกล่าว
ขั้นสูง
นอกจากนี้ยังมีอินเทอร์เฟซเพิ่มเติมที่ช่วยให้เกิดการโต้ตอบที่ซับซ้อนมากขึ้นระหว่าง ชุดทดสอบและโปรแกรมเรียกใช้การทดสอบ
- ITestFilterReceiver, ซึ่งช่วยให้การทดสอบรับชุดตัวกรองเพื่อเรียกใช้การทดสอบบางอย่าง เท่านั้น ซึ่งจะมีประโยชน์ในการเรียกใช้ชุดย่อยของการทดสอบ
- ITestCollector ซึ่งช่วยให้โปรแกรมเรียกใช้การทดสอบสามารถทดสอบแบบดรายรันเท่านั้นแทนที่จะ เรียกใช้จริง ซึ่งจะมีประโยชน์ในการรวบรวมรายการกรณีทดสอบทั้งหมด
โปรแกรมเรียกใช้การทดสอบที่มีอยู่
มีโปรแกรมเรียกใช้การทดสอบหลายอย่างอยู่แล้ว ซึ่งบางอย่างก็ใช้สำหรับการทดสอบประเภทหลักๆ
- AndroidJUnitTest / InstrumentationTest (เชื่อมโยงกับ AJUR ในฝั่งอุปกรณ์)
- GTest (ฝั่งอุปกรณ์และฝั่งโฮสต์) พร้อมไลบรารี googletest
- การทดสอบที่ขับเคลื่อนโดยโฮสต์ (การทดสอบ Java ที่เรียกใช้ในโฮสต์และเรียกอุปกรณ์จากที่นั่น)
- การทดสอบหน่วย Pure Java (โปรแกรมเรียกใช้ของเราทำทั้ง 2 อย่าง)
- การทดสอบ Python
- การทดสอบ การเปรียบเทียบของ Google ด้วยคลังการเปรียบเทียบ
นอกจากที่กล่าวมาข้างต้นแล้ว ยังมีเครื่องมือเรียกใช้การทดสอบที่กำหนดเองอีกจำนวนมาก ซึ่งมีไว้เพื่อวัตถุประสงค์เฉพาะสำหรับการทดสอบฟังก์ชันบางอย่าง เช่น การทดสอบการบูต
เขียนโปรแกรมเรียกใช้การทดสอบใหม่
ดูคำแนะนำเพิ่มเติมเกี่ยวกับการเขียนโปรแกรมเรียกใช้การทดสอบใหม่ได้ในส่วนการเขียนการทดสอบ