การทดสอบแบบ Agile - Quadrants
เช่นเดียวกับในกรณีของการทดสอบแบบดั้งเดิม Agile Testing จำเป็นต้องครอบคลุมระดับการทดสอบทั้งหมดด้วย
- การทดสอบหน่วย
- การทดสอบการผสานรวม
- การทดสอบระบบ
- การทดสอบการยอมรับของผู้ใช้
การทดสอบหน่วย
- ทำควบคู่กับการเข้ารหัสโดยนักพัฒนา
- สนับสนุนโดยผู้ทดสอบที่เขียนกรณีทดสอบเพื่อให้แน่ใจว่าครอบคลุมการออกแบบ 100%
- ต้องมีการทบทวนกรณีทดสอบหน่วยและผลการทดสอบหน่วย
- ข้อบกพร่องสำคัญที่ยังไม่ได้รับการแก้ไข (ตามลำดับความสำคัญและความรุนแรง) จะไม่ถูกทิ้งไว้
- การทดสอบหน่วยทั้งหมดเป็นแบบอัตโนมัติ
การทดสอบการผสานรวม
- ทำควบคู่ไปกับการผสานรวมอย่างต่อเนื่องขณะที่ Sprints ดำเนินไป
- เสร็จสิ้นในตอนท้ายหลังจาก Sprints ทั้งหมดเสร็จสิ้น
- มีการทดสอบข้อกำหนดการทำงานทั้งหมด
- มีการทดสอบการเชื่อมต่อระหว่างหน่วยทั้งหมด
- มีการรายงานข้อบกพร่องทั้งหมด
- การทดสอบจะเป็นไปโดยอัตโนมัติหากทำได้
การทดสอบระบบ
- เสร็จสิ้นเมื่อการพัฒนาดำเนินไป
- เรื่องราวของผู้ใช้คุณสมบัติและฟังก์ชั่นได้รับการทดสอบ
- ทำการทดสอบในสภาพแวดล้อมการผลิต
- ดำเนินการทดสอบคุณภาพ (ประสิทธิภาพความน่าเชื่อถือ ฯลฯ )
- มีการรายงานข้อบกพร่อง
- การทดสอบจะเป็นไปโดยอัตโนมัติหากทำได้
การทดสอบการยอมรับของผู้ใช้
เสร็จสิ้นในตอนท้ายของแต่ละ Sprint และเมื่อสิ้นสุดโครงการ
ทำโดยลูกค้า ข้อเสนอแนะถูกนำโดยทีมงาน
คำติชมจะเป็นข้อมูลใน Sprints ที่ตามมา
เรื่องราวของผู้ใช้ใน Sprint ได้รับการยืนยันล่วงหน้าว่าสามารถทดสอบได้และเป็นไปตามเกณฑ์การยอมรับที่กำหนดไว้
ประเภทการทดสอบ
- การทดสอบส่วนประกอบ (การทดสอบหน่วย)
- การทดสอบการทำงาน (การทดสอบเรื่องราวของผู้ใช้)
- การทดสอบที่ไม่สามารถใช้งานได้ (ประสิทธิภาพการโหลดความเครียด ฯลฯ )
- การทดสอบการยอมรับ
การทดสอบสามารถทำได้ทั้งแบบแมนนวลอัตโนมัติเต็มรูปแบบการรวมกันของคู่มือและอัตโนมัติหรือด้วยตนเองที่เครื่องมือสนับสนุน
สนับสนุนการเขียนโปรแกรมและการทดสอบผลิตภัณฑ์ที่สำคัญ
การทดสอบสามารถสำหรับ -
Supporting Development (Support Programming) - Support Programming Tests ใช้โดย Programmer
ในการตัดสินใจว่าพวกเขาต้องเขียนโค้ดอะไรเพื่อให้บรรลุพฤติกรรมบางอย่างของระบบ
ต้องมีการทดสอบอะไรบ้างหลังจาก Coding เพื่อให้แน่ใจว่า Code ใหม่จะไม่ขัดขวางพฤติกรรมที่เหลือของระบบ
Verification only (Critique Product) - Critique Product Tests ใช้สำหรับค้นหาความไม่เพียงพอในผลิตภัณฑ์สำเร็จรูป
การเผชิญหน้าทางธุรกิจและการทดสอบการเผชิญกับเทคโนโลยี
ในการตัดสินใจว่าจะทำการทดสอบใดเมื่อใดคุณต้องพิจารณาว่าการทดสอบนั้น -
- หันหน้าไปทางธุรกิจหรือ
- หันหน้าไปทางเทคโนโลยี
การทดสอบการเผชิญหน้าทางธุรกิจ
การทดสอบคือการทดสอบแบบเผชิญหน้าทางธุรกิจหากตอบคำถามที่มีกรอบคำจากโดเมนธุรกิจ ผู้เชี่ยวชาญด้านธุรกิจเหล่านี้เข้าใจและน่าสนใจเพื่อให้สามารถอธิบายพฤติกรรมของระบบได้ในสถานการณ์แบบเรียลไทม์
การทดสอบการเผชิญกับเทคโนโลยี
การทดสอบคือการทดสอบที่ต้องเผชิญกับเทคโนโลยีหากตอบคำถามที่มีกรอบคำจากโดเมนเทคโนโลยี โปรแกรมเมอร์เข้าใจสิ่งที่ต้องดำเนินการตามคำชี้แจงเกี่ยวกับเทคโนโลยี
ประเภทการทดสอบทั้งสองนี้สามารถดูได้โดยใช้ Agile Testing Quadrants ที่กำหนดโดย Brian Marick
Quadrants การทดสอบ Agile
การรวมสองด้านของประเภทการทดสอบเข้าด้วยกัน Quadrants การทดสอบ Agile ต่อไปนี้ได้มาจาก Brian Marick -
Agile Testing Quadrants ให้อนุกรมวิธานที่เป็นประโยชน์เพื่อช่วยให้ทีมระบุวางแผนและดำเนินการทดสอบที่จำเป็น
Quadrant Q1- ระดับหน่วยการหันหน้าไปทางเทคโนโลยีและสนับสนุนนักพัฒนา การทดสอบหน่วยเป็นของ Quadrant นี้ การทดสอบเหล่านี้อาจเป็นการทดสอบอัตโนมัติ
Quadrant Q2- ระดับระบบการเผชิญหน้าทางธุรกิจและสอดคล้องกับพฤติกรรมของผลิตภัณฑ์ การทดสอบการทำงานเป็นของควอดแรนท์นี้ การทดสอบเหล่านี้เป็นแบบแมนนวลหรือแบบอัตโนมัติ
Quadrant Q3- ระดับการยอมรับของระบบหรือผู้ใช้การหันหน้าเข้าหาธุรกิจและมุ่งเน้นไปที่สถานการณ์แบบเรียลไทม์ การทดสอบการยอมรับของผู้ใช้เป็นของส่วนนี้ การทดสอบเหล่านี้เป็นแบบแมนนวล
Quadrant Q4- ระดับการยอมรับของระบบหรือการปฏิบัติงานการหันหน้าเข้าหาเทคโนโลยีและมุ่งเน้นไปที่ประสิทธิภาพการโหลดความเครียดการบำรุงรักษาการทดสอบความสามารถในการปรับขยาย สามารถใช้เครื่องมือพิเศษสำหรับการทดสอบเหล่านี้ร่วมกับการทดสอบอัตโนมัติ
การรวมสิ่งเหล่านี้เข้าด้วยกัน Quadrants การทดสอบ Agile ที่สะท้อน What-Testing-When สามารถมองเห็นได้ดังนี้ -