ฉันเพิ่งถามคำถามเกี่ยวกับการทดสอบในการพัฒนาเกม - นี่คือ BTW ที่ฉันรู้เกี่ยวกับสิ่งนี้ คำตอบมีชี้ให้เห็นข้อเสียที่เฉพาะเจาะจงอยากรู้อยากเห็น:
- มันเป็นค่าใช้จ่ายที่ต้องทำเมื่อรหัสของคุณควรจะคู่สูง
- เป็นการยากที่จะทำเมื่อคุณต้องระวังแพลตฟอร์มฮาร์ดแวร์ต่าง ๆ เมื่อคุณควรวิเคราะห์ผลลัพธ์ไปยังผู้ใช้และผลลัพธ์ของรหัสจะเหมาะสมในบริบทที่กว้างขึ้นเท่านั้น
- UI และ UX ทดสอบเป็นเรื่องยากมาก
- การทดสอบอัตโนมัติอาจมีราคาแพงกว่าและมีประสิทธิภาพน้อยกว่าการทดสอบเบต้าที่มีต้นทุนต่ำ (หรือฟรี)มาก
จุดที่ 4 ทำให้ฉันจำประสบการณ์บางอย่างของฉันได้ ฉันทำงานใน บริษัท ที่มีการบริหารจัดการแบบ Scrum ที่เน้นการใช้ XP เป็นหลักซึ่งแนะนำให้ทำการทดสอบหน่วย อย่างไรก็ตามในเส้นทางของมันไปสู่รูปแบบของระบบราชการที่น้อยลง บริษัท เพิ่งละเลยการสร้างทีมงาน QA - เราไม่มีผู้ทดสอบ บ่อยครั้งที่ลูกค้าพบข้อผิดพลาดเล็กน้อยโดยใช้ระบบบางอย่างแม้จะมีการทดสอบครอบคลุมถึง> 95% ดังนั้นฉันจะเพิ่มจุดอื่น:
- การทดสอบอัตโนมัติอาจทำให้คุณรู้สึกว่าการควบคุมคุณภาพและการทดสอบนั้นไม่สำคัญ
นอกจากนี้ฉันกำลังคิดถึงวันเหล่านั้นเกี่ยวกับเอกสารประกอบและไตร่ตรองสมมติฐานที่อาจใช้ได้ (เพื่อขยายน้อยกว่า) เพื่อทดสอบสองรายการ ฉันเพิ่งรู้สึกว่ารหัสวิวัฒนาการอย่างรวดเร็วว่ามันยากที่จะทำเอกสารที่ตามด้วยความเร็วดังกล่าวดังนั้นจึงมีประโยชน์มากที่จะใช้เวลาในการอ่านโค้ดมากกว่าการเขียนเอกสารที่หนักและล้าสมัยง่าย ๆ (แน่นอนว่าสิ่งนี้ไม่ได้ใช้กับ APIs แต่ใช้กับการติดตั้งภายในเท่านั้น) การทดสอบมีปัญหาเล็กน้อยจากปัญหาเดียวกัน: การเขียนอาจช้าเกินไปเมื่อเทียบกับรหัสทดสอบ OTOH มันเป็นปัญหาน้อยเพราะการทดสอบเตือนพวกเขาจะล้าสมัยในขณะที่เอกสารของคุณจะอยู่เงียบ ๆ ตราบใดที่คุณไม่ได้อ่านมันมากอย่างระมัดระวัง
ในที่สุดปัญหาที่ฉันพบในบางครั้ง: การทดสอบอัตโนมัติอาจขึ้นอยู่กับเครื่องมือและเครื่องมือเหล่านั้นอาจเขียนได้ไม่ดี ฉันเริ่มโครงการโดยใช้ XUL เมื่อไม่นานมานี้และมนุษย์นี่เป็นเพียงความเจ็บปวดในการเขียนการทดสอบหน่วยสำหรับแพลตฟอร์มดังกล่าว ฉันเริ่มต้นแอปพลิเคชันอื่นโดยใช้ Objective-C, Cocoa และ Xcode 3 และรูปแบบการทดสอบในนั้นเป็นวิธีแก้ปัญหามากมาย
ฉันมีประสบการณ์อื่นเกี่ยวกับข้อเสียของการทดสอบอัตโนมัติ แต่ส่วนใหญ่มีการระบุไว้ในคำตอบอื่น ๆ กระนั้นฉันก็เป็นผู้สนับสนุนที่รุนแรงในการทดสอบอัตโนมัติ สิ่งนี้ได้บันทึกการทำงานและอาการปวดหัวมากมายและฉันมักจะแนะนำโดยค่าเริ่มต้นเสมอ ฉันตัดสินว่าข้อเสียเหล่านี้เป็นเพียงรายละเอียดเมื่อเปรียบเทียบกับประโยชน์ของการทดสอบอัตโนมัติ (เป็นสิ่งสำคัญที่จะต้องประกาศความเชื่อของคุณเสมอหลังจากที่คุณแสดงความคิดเห็นนอกรีตเพื่อหลีกเลี่ยงการอัตโนมัติ)