วงจรการทดสอบ TF

วงจรชีวิตของการทดสอบที่ดำเนินการโดยใช้ Trade Federation ประกอบด้วยสี่ขั้นตอนแยกกันซึ่งออกแบบโดยใช้อินเทอร์เฟซที่กำหนดไว้อย่างเป็นทางการ

อินเทอร์เฟซที่กำหนด

  • Build Provider : จัดเตรียม บิลด์ เพื่อทดสอบดาวน์โหลดไฟล์ที่เหมาะสมหากจำเป็น
  • ผู้จัดเตรียมเป้าหมาย : เตรียมสภาพแวดล้อมการทดสอบซึ่งอาจรวมถึงการติดตั้งซอฟต์แวร์และการกำหนดค่าอุปกรณ์
  • ทดสอบ : ดำเนินการทดสอบและรวบรวมผลการทดสอบ นี่อาจเป็นการทดสอบ JUnit แม้ว่าอินเทอร์เฟซ IRemoteTest ของเราได้รับการออกแบบมาโดยเฉพาะเพื่อให้ทำงานได้ดีในสภาพแวดล้อมของสหพันธ์การค้า
  • Test Invocation Listener (การรายงานผล) : รับฟังผลการทดสอบโดยทั่วไปมีจุดประสงค์เพื่อการส่งต่อผลการทดสอบไปยังที่เก็บหรือแสดงต่อ Test Runner

เอนทิตีการทดสอบพื้นฐานใน TF คือ Configuration (config) config คือไฟล์ XML ที่ประกาศส่วนประกอบวงจรชีวิตของการทดสอบ

การแยกวงจรชีวิตของการทดสอบนี้มีจุดมุ่งหมายเพื่อให้สามารถนำกลับมาใช้ใหม่ได้ ด้วยการใช้การออกแบบนี้นักพัฒนาสามารถสร้างการทดสอบหนึ่งครั้งจากนั้นตัวรวมสามารถสร้างการกำหนดค่าต่างๆเพื่อเรียกใช้การทดสอบนั้นในสภาพแวดล้อมที่แตกต่างกัน ตัวอย่างเช่นพวกเขาสามารถสร้างการกำหนดค่าที่จะเรียกใช้การทดสอบบนเครื่องโลคัลและถ่ายโอนผลลัพธ์ไปยัง stdout จากนั้นพวกเขาสามารถสร้างการกำหนดค่าที่สองที่จะดำเนินการทดสอบเดียวกัน แต่ใช้ Test Invocation Listener อื่นเพื่อจัดเก็บผลการทดสอบในฐานข้อมูล การกำหนดค่าที่สามอาจได้รับการออกแบบให้ดำเนินการทดสอบอย่างต่อเนื่องจากห้องปฏิบัติการทดสอบที่ใดที่หนึ่ง

สะดวกที่จะทราบว่าการกำหนดค่าพร้อมกับอาร์กิวเมนต์บรรทัดคำสั่ง (ตามที่ Test Runner ให้มา) เรียกว่า Command เมื่อคู่ TF คำสั่งที่มี ITestDevice และรันมันวัตถุที่ตามมาเป็นที่รู้จักกันในฐานะที่เป็นภาวนา กล่าวโดยย่อคือ Invocation ครอบคลุมการดำเนินการทดสอบ TF ที่สมบูรณ์ตลอดวงจรชีวิตทั้งหมด

ส่วนประกอบการกำหนดค่าเพิ่มเติม

  • การกู้คืนอุปกรณ์ : กลไกในการกู้คืนการสื่อสารของอุปกรณ์หากสูญหาย
  • Logger : รวบรวมข้อมูลการบันทึกที่แลกเปลี่ยน

เอาท์พุตและข้อผิดพลาดของสเตจ

แต่ละขั้นตอนของการเรียกใช้จะดำเนินการตามลำดับและมีเป้าหมายที่เฉพาะเจาะจง ส่วนนี้อธิบายถึงผลลัพธ์และข้อผิดพลาดตามปกติของแต่ละขั้นตอน

สร้างผู้ให้บริการ

ขั้นตอนนี้สร้างและเอาต์พุตอ็อบเจ็กต์ IBuildInfo ที่มีการอ้างอิงไฟล์ที่จำเป็นทั้งหมดเพื่อตั้งค่าและรันการทดสอบ

ข้อผิดพลาดที่พบบ่อยที่สุดในขั้นตอนนี้คือความล้มเหลวในการดาวน์โหลดหรือค้นหาไฟล์ที่ร้องขอ

ข้อผิดพลาดในขั้นตอนนี้ส่งผลให้รายงานข้อผิดพลาดโดยตรงและไม่มีการทดสอบใด ๆ

การเตรียมเป้าหมาย

ขั้นตอนนี้ตั้งค่าสถานะที่จำเป็นสำหรับเป้าหมายภายใต้การทดสอบ ขั้นตอนนี้สามารถเปลี่ยนอุปกรณ์หรือการตั้งค่าโฮสต์ได้ตามต้องการสำหรับการเรียกใช้การทดสอบที่กำหนด

ข้อผิดพลาดทั่วไปในขั้นตอนนี้มักเกี่ยวข้องกับความล้มเหลวในการตั้งค่าอุปกรณ์ให้อยู่ในสถานะที่กำหนด (ตัวอย่างเช่นการกะพริบล้มเหลว) และความล้มเหลวในการค้นหาไฟล์ที่ต้องการสำหรับการตั้งค่า

ข้อผิดพลาดในขั้นตอนนี้ส่งผลให้การล้างเป้าหมายทำงานรายงานข้อผิดพลาดและไม่มีการเรียกใช้การทดสอบ

การทดสอบ

ขั้นตอนนี้เรียกใช้การทดสอบที่ร้องขอบนเป้าหมายที่เตรียมไว้ก่อนหน้านี้และรายงานผลการดำเนินการทดสอบทั้งหมด

ข้อผิดพลาดทั่วไปในขั้นตอนนี้มักเกี่ยวข้องกับเป้าหมายที่อยู่ระหว่างการทดสอบไม่พร้อมใช้งานหรือข้อผิดพลาดบางอย่างทำให้การทดสอบบางส่วน ข้อผิดพลาดเหล่านี้เป็นปัญหาโครงสร้างพื้นฐานที่ส่งผลต่อการดำเนินการทดสอบเมื่อเทียบกับความล้มเหลวของกรณีทดสอบเดียว

ข้อผิดพลาดในขั้นตอนนี้ส่งผลให้การดำเนินการทดสอบหยุดทำงานเป้าหมายล้างการทำงานรายงานข้อผิดพลาดและรับผลลัพธ์บางส่วน

การรายงานผล

ขั้นตอนนี้รายงานผลลัพธ์และข้อผิดพลาดไปยังบริการที่กำหนดค่าไว้ (เช่นเซิร์ฟเวอร์และไฟล์ในเครื่อง)

แม้ว่าผู้รายงานผลแต่ละรายอาจมีข้อผิดพลาด แต่ก็แยกออกจากกัน (ผู้รายงานคนหนึ่งไม่เห็นข้อผิดพลาดจากอีกคนหนึ่ง) ข้อผิดพลาดเหล่านี้มีผลต่อการรายงานผลลัพธ์ของผู้รายงานแต่ละคนเท่านั้นและสามารถดูข้อผิดพลาดได้ในบันทึก