รู้จักกับ Acceptance Test Stage ใน Deployment Pipeline กัน

Karnawat Wongudom
Siam Chamnankit Family
1 min readJan 29, 2020

Acceptance Test Stage ก็คือ ขั้นตอนการทดสอบเพื่อทดสอบว่าโปรแกรมทำงานได้ตามที่ลูกค้าต้องการ สามารถตอบสนองความต้องการทางธุรกิจของลูกค้าได้

โดยสิ่งที่ลูกค้าต้องการเราเรียกว่า Acceptance Criteria
ซึ่งเจ้าสิ่ง Acceptance Criteria นี้แหล่ะนำมาสร้างชุดการทดสอบเพื่อที่จะทำให้เกิดเป็น Automate Test Script และนำเข้าไปอยู่ใน Deployment Pipeline เพื่อทดสอบว่าโปรแกรมระบบของเรา ยังคงสามารถตอบความต้องการของลูกค้าอยู่ไหม เมื่อมีการเปลี่ยนแปลงในระบบของเรา

การทดสอบนี้จะเป็นการจำลองการสร้างระบบเสมือนจริง ขึ้นมาเพื่อทดสอบ
เช่นมีการติดต่อกับ Database จริง , มีระบบรอบข้างภายในของเราที่เหมือนจริง
แต่ว่า หากเป็นระบบที่มีโครงสร้างที่จำเป็นต้องเชื่อมต่อไปยังระบบภายนอก เราสามารถใช้เทคนิค Test Double เพื่อจำลองระบบภายนอกเพื่อให้เราสามารถทดสอบภายในของเราเองได้ ข้อสำคัญของชุดการทดสอบนี้ ในแต่ละการทดสอบนั้นต้องเป็นอิสระต่อกัน การทดสอบแต่ละอย่างควรจะตอบกับธุรกิจหรือมีจุดประสงค์ในการทดสอบภายในตัวเอง ซึ่งในการทดสอบนี้จะใช้เวลาในการทดสอบมากขึ้น และมีความซับซ้อนที่มากขึ้นด้วย การสร้างชุดการทดสอบนี้ควรตั้งอยู่บนหลัก INVEST

http://agileety.com/definition-of-ready

การทดสอบใน Stage นี้จะช่วยลดค่าใช้จ่ายในการทดสอบระบบของเราซ้ำ หาก Release Candidate ของเราไม่ผ่านในกระบวนการทดสอบนี้ ก็ไม่ควรนำขึ้น Release เพื่อใช้งาน หรือเข้าสู่กระบวนการทดสอบถัดไป

สุดท้าย การทดสอบนี้เป็นการทดสอบเพื่อลูกค้าของเรา การทดสอบนี้จะช่วยเพิ่มความมั่นใจในกระบวนการส่งมอบของเราให้มากขึ้น เมื่อ Software สามารถตอบโจทย์ของธุรกิจก็จะทำให้เกิดมูลค่าของธุรกิจ การทำเป็น Automate ยังมีผลประโยชน์ที่ช่วยลดแรงและค่าใช้จ่ายในการทดสอบซ้ำ ช่วยให้ทีม Tester ไปเน้นเรื่องการวางแผนการทดสอบหรืองานอื่นที่มีประโยชน์มากกว่า และมี Feedback ที่เป็นประโยชน์และบอกจุดข้อผิดพลาดได้ไวด้วย

Reference : Continuous Delivery : Chapter 8 Automated Acceptance Testing

--

--