การทดสอบแบบ Agile - เทคนิค

เทคนิคการทดสอบจากการทดสอบแบบดั้งเดิมสามารถใช้ในการทดสอบ Agile ได้เช่นกัน นอกจากนี้ยังมีการใช้เทคนิคการทดสอบและคำศัพท์เฉพาะของ Agile ในโครงการ Agile

พื้นฐานการทดสอบ

ในโครงการที่มีความคล่องตัวสินค้าที่ค้างอยู่ในระบบจะแทนที่เอกสารข้อกำหนดข้อกำหนด โดยปกติเนื้อหาของสินค้าค้างส่งเป็นเรื่องราวของผู้ใช้ ข้อกำหนดที่ไม่ใช้งานได้รับการดูแลในเรื่องราวของผู้ใช้ด้วย ดังนั้นพื้นฐานการทดสอบในโครงการ Agile คือเรื่องราวของผู้ใช้

เพื่อให้แน่ใจว่าการทดสอบคุณภาพสามารถพิจารณาสิ่งต่อไปนี้เพิ่มเติมเป็นพื้นฐานการทดสอบ -

  • ประสบการณ์จากการทำซ้ำก่อนหน้านี้ของโครงการเดียวกันหรือโครงการในอดีต
  • ฟังก์ชันที่มีอยู่สถาปัตยกรรมการออกแบบรหัสและลักษณะคุณภาพของระบบ
  • ข้อมูลบกพร่องจากโครงการปัจจุบันและในอดีต
  • ความคิดเห็นของลูกค้า
  • เอกสารสำหรับผู้ใช้

คำจำกัดความของ Done

คำจำกัดความของ Done (DoD) คือเกณฑ์ที่ใช้ในโครงการ Agile เพื่อให้แน่ใจว่ากิจกรรมใน Sprint backlog เสร็จสมบูรณ์ DoD อาจแตกต่างกันไปในแต่ละทีม Scrum แต่ควรสอดคล้องกันภายในทีมเดียว

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

DoD ทั่วไปสำหรับเรื่องราวของผู้ใช้สามารถมี -

  • เกณฑ์การยอมรับโดยละเอียดที่ทดสอบได้
  • เกณฑ์เพื่อให้แน่ใจว่าเรื่องราวของผู้ใช้สอดคล้องกับเรื่องอื่น ๆ ในการทำซ้ำ
  • เกณฑ์เฉพาะที่เกี่ยวข้องกับผลิตภัณฑ์
  • ลักษณะการทำงานของพฤติกรรม
  • ลักษณะที่ไม่ทำงาน
  • Interfaces
  • ทดสอบข้อกำหนดข้อมูล
  • ความครอบคลุมการทดสอบ
  • Refactoring
  • ข้อกำหนดการตรวจสอบและการอนุมัติ

นอกจาก DoD สำหรับเรื่องราวของผู้ใช้แล้ว DoD ยังจำเป็น -

  • ในทุกระดับของการทดสอบ
  • สำหรับแต่ละคุณสมบัติ
  • สำหรับการทำซ้ำแต่ละครั้ง
  • สำหรับการเปิดตัว

ข้อมูลการทดสอบ

ผู้ทดสอบต้องมีข้อมูลการทดสอบดังต่อไปนี้ -

  • เรื่องราวของผู้ใช้ที่ต้องทดสอบ
  • เกณฑ์การยอมรับที่เกี่ยวข้อง
  • การเชื่อมต่อระบบ
  • สภาพแวดล้อมที่ระบบคาดว่าจะทำงาน
  • ความพร้อมของเครื่องมือ
  • ความครอบคลุมการทดสอบ
  • DoD

ในโครงการ Agile เนื่องจากการทดสอบไม่ใช่กิจกรรมตามลำดับและผู้ทดสอบควรทำงานในโหมดการทำงานร่วมกันจึงเป็นความรับผิดชอบของผู้ทดสอบที่จะ -

  • รับข้อมูลการทดสอบที่จำเป็นอย่างต่อเนื่อง
  • ระบุช่องว่างของข้อมูลที่มีผลต่อการทดสอบ
  • แก้ไขช่องว่างร่วมกับสมาชิกในทีมคนอื่น ๆ
  • ตัดสินใจว่าเมื่อใดถึงระดับการทดสอบ
  • ตรวจสอบให้แน่ใจว่ามีการทดสอบที่เหมาะสมในช่วงเวลาที่เกี่ยวข้อง

การออกแบบการทดสอบการทำงานและไม่ใช้งาน

ในโครงการ Agile สามารถใช้เทคนิคการทดสอบแบบเดิมได้ แต่เน้นที่การทดสอบในระยะเริ่มต้น ต้องมีกรณีทดสอบก่อนที่จะเริ่มการใช้งาน

สำหรับการออกแบบการทดสอบฟังก์ชันผู้ทดสอบและนักพัฒนาสามารถใช้เทคนิคการออกแบบการทดสอบ Black Box แบบดั้งเดิมเช่น -

  • การแบ่งพาร์ติชันความเท่าเทียมกัน
  • การวิเคราะห์มูลค่าขอบเขต
  • ตารางการตัดสินใจ
  • การเปลี่ยนสถานะ
  • ต้นไม้คลาส

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

การทดสอบเชิงสำรวจ

ในโครงการ Agile เวลามักเป็นปัจจัย จำกัด สำหรับการวิเคราะห์ทดสอบและการออกแบบการทดสอบ ในกรณีเช่นนี้สามารถใช้เทคนิคการทดสอบเชิงสำรวจร่วมกับเทคนิคการทดสอบแบบเดิมได้

Exploratory Testing (ET) หมายถึงการเรียนรู้พร้อมกันการออกแบบการทดสอบและการดำเนินการทดสอบ ในการทดสอบเชิงสำรวจผู้ทดสอบจะควบคุมการออกแบบการทดสอบอย่างแข็งขันในขณะที่ดำเนินการและใช้ข้อมูลที่ได้รับขณะทดสอบเพื่อออกแบบการทดสอบใหม่และดีกว่า

การทดสอบเชิงสำรวจมีประโยชน์เพื่อรองรับการเปลี่ยนแปลงในโครงการ Agile

การทดสอบตามความเสี่ยง

การทดสอบตามความเสี่ยงคือการทดสอบตามความเสี่ยงของความล้มเหลวและลดความเสี่ยงโดยใช้เทคนิคการออกแบบการทดสอบ

ความเสี่ยงด้านคุณภาพของผลิตภัณฑ์สามารถกำหนดเป็นปัญหาที่อาจเกิดขึ้นกับคุณภาพของผลิตภัณฑ์ ความเสี่ยงด้านคุณภาพของผลิตภัณฑ์ ได้แก่ -

  • ความเสี่ยงในการทำงาน
  • ความเสี่ยงด้านประสิทธิภาพที่ไม่สามารถใช้งานได้
  • ความเสี่ยงในการใช้งานที่ไม่สามารถใช้งานได้

การวิเคราะห์ความเสี่ยงจะต้องทำเพื่อประเมินความน่าจะเป็น (โอกาส) และผลกระทบของแต่ละความเสี่ยง จากนั้นความเสี่ยงจะถูกจัดลำดับความสำคัญ -

  • ความเสี่ยงสูงต้องการการทดสอบที่กว้างขวาง
  • ความเสี่ยงต่ำต้องใช้การทดสอบเคอร์เซอร์เท่านั้น

การทดสอบได้รับการออกแบบโดยใช้เทคนิคการทดสอบที่เหมาะสมตามระดับความเสี่ยงและลักษณะความเสี่ยงของแต่ละความเสี่ยง จากนั้นจะทำการทดสอบเพื่อลดความเสี่ยง

การทดสอบพอดี

Fit Tests คือการทดสอบการยอมรับโดยอัตโนมัติ Tools Fit และ FitNesse สามารถใช้สำหรับการทดสอบการยอมรับโดยอัตโนมัติ

FIT ใช้ JUnit แต่ขยายฟังก์ชันการทดสอบ ตาราง HTML ใช้เพื่อแสดงกรณีทดสอบ Fixture คือคลาส Java ที่อยู่หลังตาราง HTML ฟิกซ์เจอร์รับเนื้อหาของตาราง HTML และรันกรณีทดสอบในโครงการที่กำลังทดสอบ