คำตอบของฉัน? บางทีอาจจะไม่ได้
การทดสอบ EOE นั้นดีเมื่อพวกมันง่ายมาก หากคุณวางแผนที่จะครอบคลุมสถานการณ์พื้นฐานคุณสามารถจัดการเพื่อรับประโยชน์จากการทดสอบ EOE แต่ถ้าคุณมีแอปพลิเคชั่นที่ซับซ้อนและมีขนาดใหญ่มาก (ภารกิจสำคัญหรือไม่) การทดสอบ EOE นี้จะมีค่าใช้จ่ายสูงในการบำรุงรักษาและคุณจำเป็นต้องรู้สถานการณ์ของคุณเพื่อประเมินว่าคุ้มค่าหรือไม่
เมื่อหลายปีก่อนบล็อกการทดสอบของ Google พูดถึงเรื่องนี้ ฉันเห็นด้วยกับผู้เขียนเท่านั้น การทดสอบที่ดีจะต้องได้อย่างรวดเร็ว , มีความน่าเชื่อถือและความล้มเหลวของการแยกองค์ประกอบว่าการทดสอบ EOE จะไม่สามารถที่จะส่งมอบให้กับคุณ
ฉันทำงานกับแอปพลิเคชันที่มีการทดสอบแบบครบวงจรมากกว่า 12 ชั่วโมงซึ่งครอบคลุมสถานการณ์จำนวนมาก ในที่สุดเราก็สามารถแจกจ่ายการทดสอบนี้ในเครื่องต่าง ๆ , ควบคุมการเริ่มต้น, การดำเนินการและสิ้นสุดการทดสอบ, รวบรวมและรวมผลลัพธ์ แอปพลิเคชั่นที่ทดสอบเป็นแอพพลิเคชั่นที่มีขนาดใหญ่มาก (สิ่งที่ง่ายกว่าในการติดตั้งและทดสอบเพื่อใช้งาน) และฝันร้ายในการรักษาการทดสอบ
ส่วนใหญ่เราจะทำการทดสอบแทนการจับข้อบกพร่องจากผลลัพธ์ของพวกเขา ค้นพบต้นกำเนิดของข้อบกพร่องในการทดสอบแบบครบวงจรใช้เวลานาน นอกจากนี้เรายังจัดการกับการทดสอบ "false-negative" จำนวนมากและไม่กี่ครั้งในการทำความเข้าใจปัญหาและแก้ไข: ปัญหาการโหลด Java Applet, องค์ประกอบที่คาดหวังไม่พบในหน้า (รวมถึงปัญหาอื่น ๆ เกี่ยวกับความเร็วอัตโนมัติ), รักษารหัสแบบสอบถาม จะใช้ในการทดสอบหน่วยความจำฐานข้อมูล (เนื่องจากแบบสอบถามต้นฉบับใช้รหัสเฉพาะฐานข้อมูล) เป็นต้น
ทั้งหมดนี้ต้องการผู้คนในการดูแลและดำเนินการ ในตอนท้ายเราเริ่มลบการทดสอบ EOE และแทนที่ด้วยการทดสอบหน่วย / การรวมหลายอย่าง
ดังนั้นคำแนะนำเชิงอนุรักษ์ของฉันคือใช้ปิรามิดทดสอบจาก Google:
เป็นการคาดเดาที่ดีครั้งแรก Google มักจะแนะนำการทดสอบแบบแบ่งแบ่ง 70/20/10: การทดสอบหน่วย 70% การทดสอบการรวม 20% และการทดสอบแบบ end-to-end 10% การผสมที่แน่นอนจะแตกต่างกันไปสำหรับแต่ละทีม แต่โดยทั่วไปควรรักษารูปทรงปิรามิดนั้นไว้