แอป Home APIs มีข้อควรพิจารณาและความท้าทายที่ไม่เหมือนกับแอป iOS ประเภทอื่นๆ ซึ่งรวมถึงการพึ่งพาอุปกรณ์สมาร์ทโฮมจริง ความน่าเชื่อถือของเครือข่าย ความปลอดภัยและความเป็นส่วนตัว รวมถึงความสามารถในการทำงานร่วมกันของอุปกรณ์และโปรโตคอล ความแตกต่างเหล่านี้ส่งผลต่อการทดสอบ
ตั้งค่าสภาพแวดล้อมการทดสอบ
สภาพแวดล้อมการทดสอบที่มีประสิทธิภาพมีความสำคัญอย่างยิ่งสำหรับการทดสอบแอป Home APIs
การแยกอุปกรณ์ทดสอบไว้ในเครือข่าย Wi-Fi เฉพาะเป็นกลยุทธ์ที่ดี ซึ่งจะช่วยป้องกันการรบกวนจากอุปกรณ์อื่นๆ และช่วยให้คุณจำลองสภาพเครือข่ายต่างๆ ได้ เช่น แบนด์วิดท์ที่ถูกจำกัด
คุณควรทดสอบโดยใช้อุปกรณ์สมาร์ทโฮมหลากหลายประเภทจากผู้ผลิตหลายราย และอย่าลืมทดสอบกับอุปกรณ์จริง อุปกรณ์เสมือนและโปรแกรมจำลองมีประโยชน์ แต่ไม่ควรใช้เพียงอย่างเดียว
เช่นเดียวกัน การทดสอบแอปกับอุปกรณ์ iOS ที่หลากหลายจากผู้ผลิตหลายราย โดยมีขนาดหน้าจอที่แตกต่างกันและใช้ iOS เวอร์ชันต่างๆ จะช่วยยืนยันความเข้ากันได้ในวงกว้าง
รวบรวมเครื่องมือ
เครื่องมือต่อไปนี้มีประโยชน์ในการทดสอบแอป Home APIs
| เครื่องมือ | คำอธิบาย |
|---|---|
| Google Home Playground | ไม่ใช่เครื่องมือทดแทนการทดสอบกับอุปกรณ์จริง แต่ มีประโยชน์อย่างยิ่งในสถานการณ์การทดสอบหลายๆ อย่าง |
| Matter Virtual Device (MVD) | แอปจำลองอีกแอปหนึ่งที่อาจมีประโยชน์เมื่อทดสอบกับ Matter อุปกรณ์ในแอป Home APIs |
| โปรแกรมจำลองเครือข่าย | ช่วยให้คุณจำลองสภาพเครือข่ายและการตอบสนองของ API ที่แตกต่างกันได้ ซึ่งมีประโยชน์อย่างยิ่งหากคุณใช้แบ็กเอนด์ระบบคลาวด์ |
| TestFlight | ช่วยให้คุณทดสอบ UI แบบอัตโนมัติได้ คุณต้องจำลอง API ที่อยู่เบื้องหลัง เพื่อจำลองการโต้ตอบของฮาร์ดแวร์ |
| คอนโซล XCode | จัดการและวิเคราะห์ข้อมูลบันทึก |
| XCUIAutomation | ช่วยให้คุณทดสอบ UI แบบอัตโนมัติได้ คุณต้องจำลอง API ที่อยู่เบื้องหลัง เพื่อจำลองการโต้ตอบของฮาร์ดแวร์ |
ใช้แนวทางและกลยุทธ์การทดสอบที่แตกต่างกัน
คุณควรใช้แนวทางการทดสอบที่หลากหลายกับแอป Home APIs สำหรับ ข้อมูลทั่วไปเกี่ยวกับวิธีการต่างๆ ดูที่ ทดสอบแอปใน TestFlight นอกจากการทดสอบประสบการณ์ของผู้ใช้และการทดสอบความปลอดภัยที่แอป iOS ทั้งหมดต้องผ่านแล้ว การทดสอบบางส่วนมีความเกี่ยวข้องเป็นพิเศษกับแอป Home APIs และเราจะเน้นรายละเอียดเพิ่มเติมในส่วนต่อไปนี้
การทดสอบฟังก์ชัน
คุณอาจต้องให้ความสำคัญเป็นพิเศษกับส่วนต่อไปนี้ ทั้งนี้ขึ้นอยู่กับความสามารถของแอป
- การค้นหาและการจับคู่อุปกรณ์ ซึ่งรวมถึงการตั้งค่าเริ่มต้นและการจับคู่กับอุปกรณ์ใหม่ การค้นหาอุปกรณ์ที่มีอยู่ซ้ำหลังจากรีสตาร์ทแอป รีบูตอุปกรณ์ หรือมีการเปลี่ยนแปลงเครือข่าย นอกจากนี้ ให้ตรวจสอบสถานการณ์ต่างๆ เช่น อุปกรณ์ไม่ตอบสนอง หรือผู้ใช้ป้อนข้อมูลเข้าสู่ระบบที่ไม่ถูกต้อง
- การซิงค์สถานะ เพื่อให้แน่ใจว่าแอปจะอัปเดตเพื่อแสดงสถานะปัจจุบันอย่างถูกต้องและทันเวลา
- วิธีจัดการและบังคับใช้สิทธิ์ โดยเฉพาะอย่างยิ่งหากแอปของคุณรองรับผู้ใช้หลายคนหรือการเข้าถึงบ้านที่แชร์ ซึ่งรวมถึงการตรวจสอบว่าแอปจัดการสิทธิ์ที่ถูกเพิกถอนได้อย่างเหมาะสม
- หากแอปของคุณรองรับฉากต่างๆ เช่น ฉาก "ราตรีสวัสดิ์" ที่ปิดไฟทั้งหมด ให้ทดสอบการสร้าง การแก้ไข และการดำเนินการฉาก ทดสอบการทำงานอัตโนมัติ ซึ่งรวมถึงเงื่อนไขเริ่มต้นและการดำเนินการ
การทดสอบประสิทธิภาพ
ตรวจสอบว่าแอปตอบสนองได้ดีและไม่ทำให้เกิดเวลาในการตอบสนองที่ไม่จำเป็น หากเป็นไปได้ ให้ทดสอบกับอุปกรณ์จำนวนมากเพื่อประเมินความสามารถในการปรับขนาดและประสิทธิภาพของแอปภายใต้ภาระงาน นอกจากนี้ ให้ดูการใช้ CPU, หน่วยความจำ และแบตเตอรี่ของแอป โดยเฉพาะอย่างยิ่งระหว่างการสื่อสารกับอุปกรณ์ที่ใช้งานอยู่ เพื่อดูว่าการใช้ทรัพยากรของแอปสมเหตุสมผลหรือไม่
การทดสอบความน่าเชื่อถือและความเสถียร
เนื่องจากแอป Home APIs ต้องพึ่งพาการเชื่อมต่อเครือข่าย คุณจึงควรทดสอบแอปกับสถานการณ์ต่อไปนี้
- ความผันผวนของเครือข่าย
- จำลองการหลุดของ Wi-Fi สัญญาณอ่อน และการสลับเครือข่าย
- ตรวจสอบว่าแอปจัดการการตัดการเชื่อมต่อและการเชื่อมต่อใหม่ได้อย่างเหมาะสม
- ตรวจสอบว่าคำสั่งเข้าคิวและดำเนินการเมื่อการเชื่อมต่อกลับมาทำงาน หรือแสดงข้อความแสดงข้อผิดพลาดที่เหมาะสม
- ทดสอบแอปจากเครือข่ายระยะไกล ไม่ใช่แค่จากเครือข่ายในบ้าน
- การตัดการเชื่อมต่ออุปกรณ์
- ถอดปลั๊กอุปกรณ์
- ปิดอุปกรณ์แล้วเปิดใหม่
- การดำเนินการพร้อมกัน
- ส่งคำสั่งตามลำดับอย่างรวดเร็ว
- ให้ผู้ใช้หลายคนพยายามควบคุมอุปกรณ์เดียวกันพร้อมกัน
- ทดสอบฉากและการทำงานอัตโนมัติที่ซ้อนทับกัน
- การจัดการข้อผิดพลาด
- บังคับให้เกิดข้อผิดพลาดของ API เช่น โดยการจำลองการตอบสนองของเซิร์ฟเวอร์ API ระบบคลาวด์
- ทดสอบอินพุตที่ไม่ถูกต้องจากผู้ใช้
- ตรวจสอบการลดลงอย่างค่อยเป็นค่อยไปและข้อความแสดงข้อผิดพลาดที่ให้ข้อมูล
- ความน่าเชื่อถือ - เรียกใช้แอปและอุปกรณ์ที่เชื่อมต่อเป็น ระยะเวลานานเพื่อค้นหาการรั่วไหลของหน่วยความจำหรือปัญหาด้านความเสถียรที่อาจเกิดขึ้น
ก่อนเปิดตัวแอป
เราขอแนะนำให้ทดสอบแอปที่ใช้ Home APIs อย่างละเอียดเพื่อยืนยันว่าแอปเป็นไปตามข้อกำหนดด้านฟังก์ชันการทำงานและคุณภาพทั้งหมดก่อนเปิดตัว ใช้ รายงานการทดสอบแอป Google Home APIs เป็นแนวทางในการทดสอบฟังก์ชันการทำงานของแอป
หากระบบขอให้คุณส่งรายงานการทดสอบแอป Google Home APIs ให้ส่ง รายงานดังกล่าวไปยัง Google Technical Account Manager (TAM) เพื่อให้ผู้จัดการได้ตรวจสอบรายงาน และใช้รายงานเป็นข้อมูลอ้างอิงเมื่อทดสอบแอป