การทดสอบแบบ Agile - ระเบียบวิธี
Agile เป็นวิธีการพัฒนาแบบวนซ้ำโดยทีมงานโครงการทั้งหมดมีส่วนร่วมในกิจกรรมทั้งหมด ข้อกำหนดจะพัฒนาไปเรื่อย ๆ เมื่อการดำเนินการทำซ้ำดำเนินไปโดยการทำงานร่วมกันระหว่างลูกค้าและทีมจัดระเบียบด้วยตนเอง เนื่องจากการเข้ารหัสและการทดสอบทำแบบโต้ตอบและเพิ่มขึ้นในระหว่างการพัฒนาผลิตภัณฑ์ขั้นสุดท้ายจะมีคุณภาพและรับประกันความต้องการของลูกค้า
การทำซ้ำทุกครั้งส่งผลให้เกิดการเพิ่มขึ้นของผลิตภัณฑ์ที่ใช้งานได้แบบบูรณาการและจะถูกส่งสำหรับการทดสอบการยอมรับของผู้ใช้ ความคิดเห็นของลูกค้าที่ได้รับจึงเป็นข้อมูลในการทำซ้ำครั้งถัดไป / ที่ตามมา
บูรณาการอย่างต่อเนื่องคุณภาพอย่างต่อเนื่อง
การผสานรวมอย่างต่อเนื่องเป็นกุญแจสำคัญสำหรับความสำเร็จในการพัฒนา Agile ผสานรวมบ่อยๆอย่างน้อยทุกวันเพื่อให้คุณพร้อมสำหรับการเปิดตัวเมื่อจำเป็น การทดสอบใน Agile กลายเป็นองค์ประกอบสำคัญของทุกขั้นตอนของการพัฒนาเพื่อให้มั่นใจในคุณภาพของผลิตภัณฑ์อย่างต่อเนื่อง การตอบรับจากทุกคนที่เกี่ยวข้องในโครงการอย่างต่อเนื่องช่วยเพิ่มคุณภาพของผลิตภัณฑ์
ใน Agile การสื่อสารมีความสำคัญสูงสุดและคำขอของลูกค้าจะได้รับเมื่อจำเป็น สิ่งนี้สร้างความพึงพอใจให้กับลูกค้าว่าปัจจัยการผลิตทั้งหมดได้รับการพิจารณาและผลิตภัณฑ์คุณภาพใช้งานได้ตลอดการพัฒนา
วิธีการแบบ Agile
มีวิธีการแบบ Agile หลายประการที่สนับสนุนการพัฒนาแบบ Agile ระเบียบวิธีแบบ Agile ได้แก่ -
การต่อสู้
Scrum เป็นวิธีการพัฒนาแบบ Agile ที่เน้นการใช้ทีมเป็นศูนย์กลาง สนับสนุนการมีส่วนร่วมของทั้งทีมในกิจกรรมการพัฒนาโครงการทั้งหมด
XP
eXtreme Programming ยึดลูกค้าเป็นศูนย์กลางและมุ่งเน้นไปที่ข้อกำหนดที่เปลี่ยนแปลงตลอดเวลา ด้วยการเปิดตัวบ่อยครั้งและความคิดเห็นของลูกค้าผลิตภัณฑ์ขั้นสุดท้ายจะมีคุณภาพตรงตามความต้องการของลูกค้าซึ่งชัดเจนขึ้นในระหว่างกระบวนการ
คริสตัล
คริสตัลขึ้นอยู่กับการเช่าเหมาลำการจัดส่งแบบวนรอบและการสรุป
การสร้างกฎบัตรเกี่ยวข้องกับการจัดตั้งทีมพัฒนาการวิเคราะห์ความเป็นไปได้เบื้องต้นการวางแผนเบื้องต้นและวิธีการพัฒนา
การจัดส่งแบบหมุนเวียนที่มีรอบการจัดส่งตั้งแต่สองรอบขึ้นไปจะมุ่งเน้นไปที่ขั้นตอนการพัฒนาและการจัดส่งผลิตภัณฑ์แบบรวมขั้นสุดท้าย
ในระหว่างการสรุปการปรับใช้ในสภาพแวดล้อมของผู้ใช้การทบทวนหลังการปรับใช้และการสะท้อนกลับจะดำเนินการ
FDD
Feature Driven Development (FDD) เกี่ยวข้องกับการออกแบบและสร้างคุณสมบัติ ความแตกต่างระหว่าง FDD และวิธีการพัฒนาแบบ Agile อื่น ๆ คือคุณลักษณะต่างๆได้รับการพัฒนาในขั้นตอนเฉพาะและระยะสั้นแยกกัน
DSDM
Dynamic Software Development Method (DSDM) ใช้ Rapid Application Development (RAD) และสอดคล้องกับ Agile Framework DSDM มุ่งเน้นไปที่การส่งมอบผลิตภัณฑ์เป็นประจำโดยให้ผู้ใช้มีส่วนร่วมอย่างกระตือรือร้นและเพิ่มขีดความสามารถให้กับทีมในการตัดสินใจอย่างรวดเร็ว
การพัฒนาซอฟต์แวร์แบบลีน
ในการพัฒนาซอฟต์แวร์แบบลีนมุ่งเน้นที่การกำจัดของเสียและให้คุณค่าแก่ลูกค้า ส่งผลให้เกิดการพัฒนาอย่างรวดเร็วและผลิตภัณฑ์ที่มีมูลค่า
ของเสียรวมถึงงานที่ทำไปแล้วบางส่วนงานที่ไม่เกี่ยวข้องคุณลักษณะที่ลูกค้าไม่ได้ใช้งานข้อบกพร่อง ฯลฯ ที่เพิ่มความล่าช้าในการจัดส่ง
Lean Principles เป็น -
- กำจัดของเสีย
- ขยายการเรียนรู้
- ความมุ่งมั่นล่าช้า
- เพิ่มพลังให้กับทีม
- ส่งเร็ว
- สร้างความซื่อสัตย์ใน
- ดูทั้งหมด
Kanban
Kanban มุ่งเน้นไปที่การจัดการงานโดยเน้นการส่งมอบตรงเวลา (JIT) ในขณะที่ไม่ให้สมาชิกในทีมมากเกินไป งานจะแสดงขึ้นเพื่อให้ผู้เข้าร่วมทุกคนเห็นและเพื่อให้สมาชิกในทีมดึงงานจากคิว
Kanban ขึ้นอยู่กับ -
- Kanban Board (มองเห็นได้และคงอยู่ตลอดการพัฒนา)
- ขีด จำกัด การทำงานระหว่างดำเนินการ (WIP)
- เวลานำ
วิธีการทดสอบแบบ Agile
แนวทางการทดสอบถูกกำหนดไว้อย่างดีสำหรับทุกโครงการไม่ว่าจะเป็น Agile หรือไม่ก็ตามเพื่อส่งมอบผลิตภัณฑ์ที่มีคุณภาพ หลักการทดสอบแบบดั้งเดิมมักใช้ในการทดสอบแบบ Agile หนึ่งในนั้นคือ Early Testing ที่เน้น -
การเขียนกรณีทดสอบเพื่อแสดงลักษณะการทำงานของระบบ
การป้องกันการตรวจหาและการกำจัดข้อบกพร่องก่อนกำหนด
ตรวจสอบให้แน่ใจว่าประเภทการทดสอบที่ถูกต้องทำงานในเวลาที่เหมาะสมและเป็นส่วนหนึ่งของระดับการทดสอบที่เหมาะสม
ใน Agile Methodologies ทั้งหมดที่เราพูดถึงการทดสอบ Agile นั้นเป็นวิธีการหนึ่ง ในทุกวิธีการทดสอบจะถูกเขียนขึ้นก่อนการเข้ารหัส
ในบทช่วยสอนนี้เราจะเน้นที่การต่อสู้เป็นวิธีการทดสอบแบบ Agile
วิธีการทดสอบ Agile อื่น ๆ ที่ใช้กันทั่วไป ได้แก่ -
Test-Driven Development (TDD) - Test-Driven Development (TDD) ขึ้นอยู่กับการเข้ารหัสที่แนะนำโดยการทดสอบ
Acceptance Test-Driven Development (ATDD) - Acceptance Test-Driven Development (ATDD) ขึ้นอยู่กับการสื่อสารระหว่างลูกค้าผู้พัฒนาและผู้ทดสอบและขับเคลื่อนโดยเกณฑ์การยอมรับที่กำหนดไว้ล่วงหน้าและกรณีการทดสอบการยอมรับ
Behavior-Driven Development (BDD) - การทดสอบ In Behavior-Driven Development (BDD) ขึ้นอยู่กับพฤติกรรมที่คาดหวังของซอฟต์แวร์ที่กำลังพัฒนา
วงจรการทดสอบแบบ Agile
ใน Scrum กิจกรรมการทดสอบประกอบด้วย -
การมีส่วนร่วมในเรื่องราวของผู้ใช้ตามพฤติกรรมที่คาดหวังของระบบที่แสดงเป็นกรณีทดสอบ
การวางแผนการวางจำหน่ายตามความพยายามในการทดสอบและข้อบกพร่อง
การวางแผน Sprint ตามเรื่องราวของผู้ใช้และข้อบกพร่อง
Sprint Execution พร้อมการทดสอบอย่างต่อเนื่อง
การทดสอบการถดถอยหลังจาก Sprint เสร็จสิ้น
การรายงานผลการทดสอบ
การทดสอบอัตโนมัติ
การทดสอบเป็นแบบวนซ้ำและวิ่งตามที่แสดงในแผนภาพด้านล่าง -