ส่วนนี้จะอธิบายลักษณะภายในของ Tradefed และความสัมพันธ์ ดูหน้าย่อยที่เชื่อมโยงสำหรับรายละเอียดเพิ่มเติม
ทดสอบการกำหนดค่า
การกำหนดค่าการทดสอบใน Tradefed อธิบายไว้ในรูปแบบ XML การทำความเข้าใจโครงสร้างของการกำหนดค่าเป็นกุญแจสำคัญในการรันและปรับแต่งการทดสอบ
โครงสร้างของการกำหนดค่า TF
การกำหนดค่า TF ทั่วโลก
ไฟล์การกำหนดค่าส่วนกลางคือการกำหนดค่า Tradefed XML พิเศษที่โหลดเมื่อ Tradefed เริ่มต้นผ่านตัวแปรสภาพแวดล้อม TF_GLOBAL_CONFIG
โดยจะโหลดออบเจ็กต์ที่เกี่ยวข้องกับขอบเขตอินสแตนซ์ Tradefed ซึ่งจะส่งผลต่อพฤติกรรมการควบคุมโดยรวม
ที่เก็บคีย์
ที่เก็บคีย์อนุญาตให้มีการแทรกตัวเลือกบรรทัดคำสั่งไปยัง Tradefed ที่มาจากที่เก็บคีย์เพื่อหลีกเลี่ยงการอ้างอิงค่าโดยตรงบนบรรทัดคำสั่ง ซึ่งสามารถใช้เพื่อซ่อนรหัสผ่านจากบรรทัดรับคำสั่งโดยการดึงรหัสผ่านจากที่เก็บคีย์โดยตรง
ผู้จัดการอุปกรณ์
ตัวจัดการอุปกรณ์มีหน้าที่รับผิดชอบในการติดตามสถานะของอุปกรณ์บนอินสแตนซ์ที่รันของ Tradefed มีการตรวจสอบด้านต่างๆ เช่น สถานะการจัดสรรและสถานะออนไลน์
ทดสอบตัวกำหนดตารางเวลาคำสั่ง
ตัวกำหนดเวลาคำสั่งทดสอบใน Tradefed รับคำสั่งเพื่อรัน เชื่อมโยงกับอุปกรณ์ และเริ่มเรียกใช้การทดสอบ
ผู้ให้บริการสร้าง
Build provider คือขั้นตอนแรกของการเรียกใช้การทดสอบ ดาวน์โหลดทรัพยากรที่จำเป็นในการตั้งค่าและดำเนินการทดสอบ (สร้างอิมเมจ, APK ทดสอบ และอื่นๆ) นอกจากนี้ยังอ้างอิงถึงวัตถุเหล่านั้นในออบ BuildInfo
ที่จะถูกส่งไปยังการทดสอบด้วย ทรัพยากรที่มีอยู่ในท้องถิ่นสามารถเชื่อมโยงในออบเจ็กต์ BuildInfo
ได้
เครื่องเตรียมเป้าหมายและน้ำยาทำความสะอาด
ตัวจัดเตรียมเป้าหมายเสนอการดำเนินการทางเลือกที่สามารถทำได้เพื่อกำหนดค่าเป้าหมายภายใต้การทดสอบในสถานะที่กำหนด เช่น การกะพริบอุปกรณ์ การตั้งค่าคุณสมบัติบางอย่าง และการเชื่อมต่อกับ Wi-Fi
นักวิ่งทดสอบ
ผู้ทดสอบใน Tradefed หมายถึงวัตถุที่รับผิดชอบในการดำเนินการทดสอบจริง ผู้ทดสอบที่แตกต่างกันขับเคลื่อนการดำเนินการทดสอบด้วยวิธีที่ต่างกัน ตัวอย่างเช่น นักวิ่งทดสอบเครื่องมือวัดจะแตกต่างจากนักวิ่งทดสอบ JUnit มาก
ผู้รายงานผล
รายงานผลใน Tradefed หมายถึงออบเจ็กต์ที่จะส่งผลไปยังปลายทางเฉพาะ โดยทั่วไปการใช้งานแต่ละครั้งจะมีความเชี่ยวชาญเฉพาะด้านสำหรับแบ็คเอนด์ผลลัพธ์ที่แตกต่างกัน และผู้รายงานผลจะรับผิดชอบในการแปลงรูปแบบผลลัพธ์ของ Tradefed ให้เป็นรูปแบบปลายทาง
การออกแบบที่ยืดหยุ่นนี้ทำให้การทดสอบใดๆ สามารถรายงานไปยังปลายทางผลลัพธ์ใดๆ และเพิ่มการทดสอบเพิ่มเติมในลักษณะแยกส่วนได้อย่างง่ายดาย
ตัวสะสมเมตริก
ตัวรวบรวมเมตริกเป็นออบเจ็กต์พิเศษใน Tradefed ซึ่งตั้งฉากกับการดำเนินการทดสอบ ช่วยให้สามารถรวบรวมข้อมูล ณ จุดต่างๆ ของวงจรการทดสอบ (เช่น การเริ่มการทดสอบ การสิ้นสุดการทดสอบ) เนื่องจากตัวรวบรวมถูกแยกออกจากการทดสอบ จุดจึงสามารถสลับ เพิ่ม และลบออกได้โดยไม่ต้องเปลี่ยนตัวการทดสอบ
การตั้งค่าทั่วทั้งโฮสต์
ส่วนนี้จะอธิบายการตั้งค่าที่ใช้ได้กับอินสแตนซ์ Tradefed เต็มรูปแบบที่ทำงานอยู่ ตัวเลือกเหล่านี้ส่งผลต่อพฤติกรรมของสายรัดโดยรวมเพื่อปรับให้เข้ากับสภาพแวดล้อมที่แตกต่างกัน เช่น อยู่ในเครือข่ายที่จำกัด
คุณลักษณะเพิ่มเติม
ส่วนต่อไปนี้จะอธิบายการใช้งานทั่วไปของ Tradefed แทนที่จะเป็นออบเจ็กต์ Tradefed
การแลกเปลี่ยนชาร์ดดิ้ง
เมื่อคลังข้อมูลการทดสอบมีขนาดใหญ่หรือใช้เวลานานในการดำเนินการ คุณสามารถแยกออกเป็นอุปกรณ์ต่างๆ ได้ เราเรียกการแบ่งส่วนนี้ว่า การแบ่งส่วน ส่วนนี้จะอธิบายวิธีการทำงานของชาร์ดดิ้งและการกำหนดค่า
การใช้ SL4A
Tradefed รองรับเลเยอร์การเขียนสคริปต์สำหรับ Android, SL4A; นี่คือชุดเครื่องมืออัตโนมัติสำหรับการเรียกใช้ Android API ในลักษณะที่ไม่ขึ้นกับแพลตฟอร์ม
ดาวน์โหลด @option แบบไดนามิก
ในบางกรณี ไฟล์ที่จำเป็นสำหรับการทดสอบหรือการดำเนินการบางอย่างอาจไม่พร้อมใช้งานภายในเครื่อง ฟีเจอร์นี้ช่วยให้ Tradefed รับไฟล์เหล่านี้จากสถานที่ระยะไกลโดยไม่ต้องผ่านผู้ให้บริการบิลด์
,ส่วนนี้จะอธิบายลักษณะภายในของ Tradefed และความสัมพันธ์ ดูหน้าย่อยที่เชื่อมโยงสำหรับรายละเอียดเพิ่มเติม
ทดสอบการกำหนดค่า
การกำหนดค่าการทดสอบใน Tradefed อธิบายไว้ในรูปแบบ XML การทำความเข้าใจโครงสร้างของการกำหนดค่าเป็นกุญแจสำคัญในการรันและปรับแต่งการทดสอบ
โครงสร้างของการกำหนดค่า TF
การกำหนดค่า TF ทั่วโลก
ไฟล์การกำหนดค่าส่วนกลางคือการกำหนดค่า Tradefed XML พิเศษที่โหลดเมื่อ Tradefed เริ่มต้นผ่านตัวแปรสภาพแวดล้อม TF_GLOBAL_CONFIG
โดยจะโหลดออบเจ็กต์ที่เกี่ยวข้องกับขอบเขตอินสแตนซ์ Tradefed ซึ่งจะส่งผลต่อพฤติกรรมการควบคุมโดยรวม
ที่เก็บคีย์
ที่เก็บคีย์อนุญาตให้มีการแทรกตัวเลือกบรรทัดคำสั่งไปยัง Tradefed ที่มาจากที่เก็บคีย์เพื่อหลีกเลี่ยงการอ้างอิงค่าโดยตรงบนบรรทัดคำสั่ง ซึ่งสามารถใช้เพื่อซ่อนรหัสผ่านจากบรรทัดรับคำสั่งโดยการดึงรหัสผ่านจากที่เก็บคีย์โดยตรง
ผู้จัดการอุปกรณ์
ตัวจัดการอุปกรณ์มีหน้าที่รับผิดชอบในการติดตามสถานะของอุปกรณ์บนอินสแตนซ์ที่รันของ Tradefed มีการตรวจสอบด้านต่างๆ เช่น สถานะการจัดสรรและสถานะออนไลน์
ทดสอบตัวกำหนดตารางเวลาคำสั่ง
ตัวกำหนดเวลาคำสั่งทดสอบใน Tradefed รับคำสั่งเพื่อรัน เชื่อมโยงกับอุปกรณ์ และเริ่มเรียกใช้การทดสอบ
ผู้ให้บริการสร้าง
Build provider คือขั้นตอนแรกของการเรียกใช้การทดสอบ ดาวน์โหลดทรัพยากรที่จำเป็นในการตั้งค่าและดำเนินการทดสอบ (สร้างอิมเมจ, APK ทดสอบ และอื่นๆ) นอกจากนี้ยังอ้างอิงถึงวัตถุเหล่านั้นในออบ BuildInfo
ที่จะถูกส่งไปยังการทดสอบด้วย ทรัพยากรที่มีอยู่ในท้องถิ่นสามารถเชื่อมโยงในออบเจ็กต์ BuildInfo
ได้
เครื่องเตรียมเป้าหมายและน้ำยาทำความสะอาด
ตัวจัดเตรียมเป้าหมายเสนอการดำเนินการทางเลือกที่สามารถทำได้เพื่อกำหนดค่าเป้าหมายภายใต้การทดสอบในสถานะที่กำหนด เช่น การกะพริบอุปกรณ์ การตั้งค่าคุณสมบัติบางอย่าง และการเชื่อมต่อกับ Wi-Fi
นักวิ่งทดสอบ
ผู้ทดสอบใน Tradefed หมายถึงวัตถุที่รับผิดชอบในการดำเนินการทดสอบจริง ผู้ทดสอบที่แตกต่างกันขับเคลื่อนการดำเนินการทดสอบด้วยวิธีที่ต่างกัน ตัวอย่างเช่น นักวิ่งทดสอบเครื่องมือวัดจะแตกต่างจากนักวิ่งทดสอบ JUnit มาก
ผู้รายงานผล
รายงานผลใน Tradefed หมายถึงออบเจ็กต์ที่จะส่งผลไปยังปลายทางเฉพาะ โดยทั่วไปการใช้งานแต่ละครั้งจะมีความเชี่ยวชาญเฉพาะด้านสำหรับแบ็คเอนด์ผลลัพธ์ที่แตกต่างกัน และผู้รายงานผลจะรับผิดชอบในการแปลงรูปแบบผลลัพธ์ของ Tradefed ให้เป็นรูปแบบปลายทาง
การออกแบบที่ยืดหยุ่นนี้ทำให้การทดสอบใดๆ สามารถรายงานไปยังปลายทางผลลัพธ์ใดๆ และเพิ่มการทดสอบเพิ่มเติมในลักษณะแยกส่วนได้อย่างง่ายดาย
ตัวสะสมเมตริก
ตัวรวบรวมเมตริกเป็นออบเจ็กต์พิเศษใน Tradefed ซึ่งตั้งฉากกับการดำเนินการทดสอบ ช่วยให้สามารถรวบรวมข้อมูล ณ จุดต่างๆ ของวงจรการทดสอบ (เช่น การเริ่มการทดสอบ การสิ้นสุดการทดสอบ) เนื่องจากตัวรวบรวมถูกแยกออกจากการทดสอบ จุดจึงสามารถสลับ เพิ่ม และลบออกได้โดยไม่ต้องเปลี่ยนตัวการทดสอบ
การตั้งค่าทั่วทั้งโฮสต์
ส่วนนี้จะอธิบายการตั้งค่าที่ใช้ได้กับอินสแตนซ์ Tradefed เต็มรูปแบบที่ทำงานอยู่ ตัวเลือกเหล่านี้ส่งผลต่อพฤติกรรมของสายรัดโดยรวมเพื่อปรับให้เข้ากับสภาพแวดล้อมที่แตกต่างกัน เช่น อยู่ในเครือข่ายที่จำกัด
คุณลักษณะเพิ่มเติม
ส่วนต่อไปนี้จะอธิบายการใช้งานทั่วไปของ Tradefed แทนที่จะเป็นออบเจ็กต์ Tradefed
การแลกเปลี่ยนชาร์ดดิ้ง
เมื่อคลังข้อมูลการทดสอบมีขนาดใหญ่หรือใช้เวลานานในการดำเนินการ คุณสามารถแยกออกเป็นอุปกรณ์ต่างๆ ได้ เราเรียกการแบ่งส่วนนี้ว่า การแบ่งส่วน ส่วนนี้จะอธิบายวิธีการทำงานของชาร์ดดิ้งและการกำหนดค่า
การใช้ SL4A
Tradefed รองรับเลเยอร์การเขียนสคริปต์สำหรับ Android, SL4A; นี่คือชุดเครื่องมืออัตโนมัติสำหรับการเรียกใช้ Android API ในลักษณะที่ไม่ขึ้นกับแพลตฟอร์ม
ดาวน์โหลด @option แบบไดนามิก
ในบางกรณี ไฟล์ที่จำเป็นสำหรับการทดสอบหรือการดำเนินการบางอย่างอาจไม่พร้อมใช้งานภายในเครื่อง ฟีเจอร์นี้ช่วยให้ Tradefed รับไฟล์เหล่านี้จากสถานที่ระยะไกลโดยไม่ต้องผ่านผู้ให้บริการบิลด์