วิธีเขียนกรณีทดสอบที่มีประสิทธิภาพ
Software Teams

วิธีเขียนกรณีทดสอบที่มีประสิทธิภาพ

ในบริการทางการเงิน เรียกว่า 'กระบวนการผู้สร้าง-ผู้ตรวจสอบ' ในด้านการบริหารความเสี่ยง เป็นที่รู้จักกันทั่วไปว่า 'หลักการ 4-Eyes' ในการจัดการอาวุธนิวเคลียร์ของสหรัฐอเมริกา เรียกว่า 'แนวคิดสองคน'

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

ในการพัฒนาซอฟต์แวร์ สิ่งนี้เรียกว่าการทดสอบหรือการประกันคุณภาพ กล่าวโดยง่าย การทดสอบซอฟต์แวร์คือการประเมินโค้ดเพื่อให้แน่ใจว่ามันทำงานตามที่คาดหวังไว้ ในการทำกิจกรรมนี้อย่างมีประสิทธิภาพ ทีมคุณภาพใช้เครื่องมือที่ทรงพลังที่เรียกว่ากรณีทดสอบ

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

กรณีทดสอบคืออะไร?

กรณีทดสอบคือชุดของการกระทำ เงื่อนไข และข้อมูลนำเข้าที่ใช้ในการประเมินคุณภาพของซอฟต์แวร์

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

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

  • ผู้ใช้ป้อนชื่อ
  • ผู้ใช้ป้อนที่อยู่อีเมล
  • ผู้ใช้คลิก 'ส่ง'
  • อีเมลยืนยันที่ส่งถึงผู้ใช้
  • ข้อมูลที่บันทึกไว้ในฐานข้อมูลที่เกี่ยวข้อง
  • ข้อมูลถูกเพิ่มไปยังรายชื่ออีเมลจดหมายข่าวที่เกี่ยวข้อง

เงื่อนไข: ข้อกำหนดที่ผู้ใช้หรือระบบต้องปฏิบัติตามขณะดำเนินการตามหน้าที่ของตน

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

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

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

  • เจน โด, ซึ่งตรงตามเกณฑ์
  • Ad@m Sand!er ซึ่งไม่ตรงตามเกณฑ์

บทบาทของกรณีทดสอบในวิศวกรรมซอฟต์แวร์

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

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

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

การลดความเสี่ยง: กรณีทดสอบจะประเมินคุณลักษณะในด้านความปลอดภัย ประสิทธิภาพ และความเสี่ยงทางการเงิน นักวิเคราะห์คุณภาพยังรวมถึงเงื่อนไขเกี่ยวกับการปฏิบัติตามกฎระเบียบ มาตรฐานอุตสาหกรรม ฯลฯ เพื่อให้แน่ใจว่าครอบคลุมทุกด้าน

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

กรณีทดสอบหนึ่งกรณีสามารถทำทุกอย่างข้างต้นได้หรือไม่? ไม่จริง. ขึ้นอยู่กับคุณสมบัติ, ซอฟต์แวร์, ระบบ, ความต้องการ, และเป้าหมายขององค์กร, มีหลายประเภทของกรณีทดสอบที่ทีม QA เขียน.

ประเภทของกรณีทดสอบ

มีกรณีทดสอบสำหรับแต่ละประเภทของการทดสอบซอฟต์แวร์. บางกรณีที่ใช้บ่อยที่สุดคือดังนี้.

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

กรณีทดสอบหน่วย: การทดสอบหน่วยเป็นการประเมินส่วนหนึ่งของฟีเจอร์หรือหน่วยเดียว ตัวอย่างเช่น QA อาจเขียนการทดสอบหน่วยเพื่อตรวจสอบว่าช่องที่อยู่อีเมลตรงตามเงื่อนไขต่างๆ

กรณีทดสอบความปลอดภัย: นี่เป็นการประเมินว่าฟีเจอร์นั้นตรงตามมาตรฐานความปลอดภัยเพื่อนำไปใช้ในขั้นตอนการผลิตหรือไม่ โดยทั่วไปจะรวมถึงการทดสอบการอนุญาต การตรวจสอบสิทธิ์ การปฏิบัติตามมาตรฐาน OWASP เป็นต้น

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

กรณีทดสอบการถดถอย: การทดสอบการถดถอยช่วยให้แน่ใจว่าฟีเจอร์ใหม่ที่คุณพัฒนาขึ้นไม่ส่งผลกระทบต่อฟีเจอร์ที่มีอยู่ในผลิตภัณฑ์

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

ในฐานะเจ้าของผลิตภัณฑ์ คุณมีสิทธิ์ตัดสินใจว่าซอฟต์แวร์ของคุณต้องทำอะไรและสร้างกรณีทดสอบที่เหมาะสมกับสิ่งนั้น คุณต้องครอบคลุมทุกสถานการณ์ที่สำคัญสำหรับคุณ

นั่นหมายความว่ากรณีทดสอบเป็นเพียงสถานการณ์ทดสอบใช่หรือไม่? ไม่เลย

กรณีทดสอบ vs. สถานการณ์ทดสอบ

กรณีทดสอบคือบันทึกที่ครอบคลุมถึงวิธีการที่ฟีเจอร์ใหม่ของคุณควรทำงาน [และวิธีการทดสอบมัน] สถานการณ์ทดสอบคือการอธิบายในระดับสูงถึงสิ่งที่อาจเกิดขึ้น [และดังนั้นจึงควรทดสอบ]

ขยายตัวอย่างก่อนหน้านี้ สถานการณ์ทดสอบจะเป็น "ทดสอบการสมัครสมาชิกจดหมายข่าว" อย่างไรก็ตาม กรณีทดสอบจะเป็น:

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

ตอนนี้ที่เราทราบถึงความแตกต่างแล้ว ให้เราหันกลับมาที่กรณีทดสอบและซูมเข้าไปดูให้ละเอียดขึ้น

องค์ประกอบของกรณีทดสอบ

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

องค์ประกอบที่สำคัญบางประการของกรณีทดสอบคือ:

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

คำอธิบาย: คำอธิบายเกี่ยวกับสิ่งที่คุณกำลังทดสอบ ในตัวอย่างข้างต้น อาจเป็น "การเพิ่มผู้สนใจจริงที่สมัครรับจดหมายข่าวของเรา"

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

  • ผู้ใช้ไม่ควรได้สมัครสมาชิกจดหมายข่าวแล้ว
  • ผู้ใช้ไม่ควรได้ยกเลิกการสมัครรับจดหมายข่าว

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

  • ผู้ใช้ป้อนชื่อที่ถูกต้อง
  • ผู้ใช้ป้อนอีเมลที่ถูกต้อง
  • ผู้ใช้ทำเครื่องหมายในช่องเลือกความเป็นส่วนตัว
  • ผู้ใช้คลิกปุ่มส่ง

ผลลัพธ์ที่คาดหวัง: รายการสิ่งที่ระบบจำเป็นต้องดำเนินการต่อไป

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

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

  • ทดสอบฟิลด์ชื่อด้วยชื่อ Katy P3rry และได้รับการยอมรับว่าเป็นข้อมูลที่ถูกต้อง [แม้ว่าจะมีตัวเลขอยู่ด้วย]

ด้วยเหตุนี้ คุณก็พร้อมที่จะเขียนกรณีทดสอบที่มีประสิทธิภาพแล้ว นี่คือวิธีการ

วิธีเขียนกรณีทดสอบที่มีประสิทธิภาพพร้อมตัวอย่าง

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

1. ระบุสถานการณ์ทดสอบ

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

ตัวอย่างเช่น สถานการณ์ทดสอบในตัวอย่างก่อนหน้าจะเป็น: ผู้ใช้สมัครสมาชิกจดหมายข่าวสำเร็จ

ในขั้นตอนนี้ สิ่งสำคัญคือต้องถามว่าเอกสารข้อกำหนดได้อธิบายลักษณะของผู้ใช้ในลักษณะเฉพาะใดหรือไม่

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

ดังนั้น กรุณาตรวจสอบข้อกำหนด, ข้อมูลจำเพาะ, และเรื่องราวของผู้ใช้อย่างละเอียดถี่ถ้วน

2. กำหนดวัตถุประสงค์ของกรณีทดสอบ

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

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

3. เขียนขั้นตอนที่ชัดเจนและกระชับ

ขั้นตอนนี้มากกว่าการระบุขั้นตอนการทำงานเท่านั้น มันคือทุกสิ่งที่ QA จำเป็นต้องทำเพื่อให้แน่ใจว่าฟีเจอร์ทำงานตามที่คาดหวัง

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

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

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

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

วาดกระบวนการ: สำหรับคุณลักษณะที่ซับซ้อน คุณอาจพบว่ามันยากที่จะบันทึกกรณีทดสอบทั้งหมดในลักษณะเชิงเส้น ในกรณีเช่นนี้ ลองใช้แผนผังกระบวนการ

ClickUp Whiteboards
วิธีทำกาแฟเป็นแผนผังการไหลด้วย ClickUp Whiteboards

ClickUp Whiteboardsมอบผืนผ้าใบเปล่าที่สามารถปรับแต่งได้อย่างสูงเพื่อแสดงภาพกระบวนการทำงานของคุณ ไม่ต้องรู้สึกกดดันที่จะต้องทำมันคนเดียว สร้างแผนผังการทำงานของคุณและแชร์กับผู้มีส่วนได้ส่วนเสียทั้งหมด—นักวิเคราะห์ธุรกิจ, นักพัฒนา, ผู้จัดการทดสอบ, ฯลฯ—และได้รับการสนับสนุนจากพวกเขาก่อนที่คุณจะเริ่ม!

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

4. ระบุผลลัพธ์ที่คาดหวัง

นี่คือคำตอบสำหรับสิ่งที่เกิดขึ้นถ้า! ดังนั้น จะเกิดอะไรขึ้นถ้าช่องชื่อถูกตรวจสอบความถูกต้อง? จะเกิดอะไรขึ้นถ้าช่องชื่อ ไม่ ถูกตรวจสอบความถูกต้อง?

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

ในลักษณะนี้ ให้สรุปผลลัพธ์ที่คาดหวังสำหรับทุกความเป็นไปได้ คุณลักษณะของคุณยิ่งซับซ้อน รายการของคุณก็จะยิ่งยาวขึ้น

5. รวมเงื่อนไขก่อนและหลัง

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

ตัวอย่างเงื่อนไขเบื้องต้น

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

ตัวอย่างเงื่อนไขหลัง

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

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

นั่นคือพื้นฐาน เรามาดูรายละเอียดกันบ้าง

แนวทางปฏิบัติที่ดีที่สุดสำหรับการเขียนกรณีทดสอบ

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

เพื่อให้แน่ใจว่ากรณีทดสอบของคุณมุ่งเน้นไปที่การส่งมอบซอฟต์แวร์คุณภาพสูง โปรดพิจารณาแนวทางปฏิบัติที่ดีที่สุดดังต่อไปนี้

🧠 คิดเหมือนผู้ใช้

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

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

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

🎯 มุ่งเน้นทำสิ่งละอย่างในแต่ละครั้ง

อย่าเขียนกรณีทดสอบการทำงาน (functional test case) ที่ทำหน้าที่เป็นการทดสอบการใช้งาน (usability test case) และเป็นการทดสอบฐานข้อมูล (database test case) ไปพร้อมกัน ทำสิ่งละอย่างในแต่ละครั้ง วิธีนี้จะช่วยให้เมื่อผลการทดสอบผ่านหรือไม่ผ่าน คุณจะทราบได้อย่างชัดเจนว่าอะไรที่ทำงานได้หรืออะไรที่ผิดพลาด

การรวมตัวแปรมากเกินไปในการทดสอบหนึ่งครั้งจะทำให้ปัญหาซับซ้อนขึ้นเมื่อการทดสอบล้มเหลว

👫 อย่าทำคนเดียว

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

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

♻️ สร้างแม่แบบที่สามารถนำกลับมาใช้ใหม่ได้

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

เทมเพลตกรณีทดสอบ ClickUp

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

🛠️ ใช้เครื่องมือที่เหมาะสม

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

ในการทำเช่นนี้ ให้เลือกเครื่องมือที่เหมาะสม

เครื่องมือและทรัพยากรสำหรับการจัดการกรณีทดสอบ

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

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

ในการจัดการสิ่งนี้ คุณจำเป็นต้องมีเครื่องมือที่แข็งแกร่ง. บางเครื่องมือทดสอบคุณภาพที่ดีที่สุดในปัจจุบันคือ:

TestRail

TestRail เป็นแพลตฟอร์มการจัดการการทดสอบสำหรับบันทึกและติดตามแผนการทดสอบ มีคุณสมบัติสำหรับการตรวจสอบย้อนกลับ, การครอบคลุม, การทดสอบอัตโนมัติ, และการวิเคราะห์ นอกจากนี้ยังผสานการทำงานกับเครื่องมือพัฒนาซอฟต์แวร์หลายตัวและมี API ที่ครอบคลุม

BrowserStack

BrowserStack เป็นเครื่องมือทดสอบแอปพลิเคชันและเบราว์เซอร์ มันให้บริการทดสอบสำหรับแอป iOS และ Android รวมถึงเว็บไซต์บนเบราว์เซอร์หลายตัว มันมีโมดูลเฉพาะสำหรับการทดสอบภาพ การทดสอบการเข้าถึง การสังเกตการณ์การทดสอบ การทำงานอัตโนมัติแบบใช้โค้ดน้อย และอื่นๆ

จิรา

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

อย่างไรก็ตาม เนื่องจาก Jira ไม่ได้ถูกออกแบบมาเพื่อการจัดการกรณีทดสอบ คุณสมบัติการรายงานและการอัตโนมัติอาจมีจำกัด

คลิกอัพ

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

การจัดการกรณีทดสอบ ClickUp
เพิ่มประสิทธิภาพการจัดการกรณีทดสอบด้วย ClickUp

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

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

ระบบอัตโนมัติในการบริหารโครงการ: ผสานการจัดการกรณีทดสอบเข้ากับกระบวนการพัฒนาผลิตภัณฑ์ของคุณอย่างไร้รอยต่อ

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

ด้วยClickUp สำหรับทีม Agile คุณสามารถสร้างรายการตรวจสอบที่สามารถนำกลับมาใช้ใหม่ได้เพื่อเพิ่มไปยังงานโดยอัตโนมัติ ตั้งค่า ClickUp Brain เพื่อช่วยให้ทีม QA เขียนรายงานได้เร็วขึ้น

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

เทมเพลตการจัดการการทดสอบของ ClickUp

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

สำหรับผู้เริ่มต้น, แบบฟอร์มนี้ยังมีเอกสาร 'วิธีเริ่มต้น' ที่ครอบคลุมเพื่อแนะนำคุณผ่านกระบวนการ.

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

สร้างซอฟต์แวร์ที่ยอดเยี่ยมสำหรับทุกกรณีด้วย ClickUp

ในการพัฒนาซอฟต์แวร์ การทดสอบมีบทบาทสำคัญในการตรวจสอบให้แน่ใจว่าทุกอย่างเป็นไปด้วยดี มันให้การสนับสนุนแบบรอบด้าน 360 องศา

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

การจัดการกระบวนการที่มีความสำคัญและครอบคลุมขนาดนี้ต้องการชุดเครื่องมือที่รอบคอบ นี่คือสิ่งที่ ClickUp เป็นอย่างแท้จริง

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

นอกเหนือจากการจัดการงานที่ทรงพลังและหลากหลายด้านแล้ว ClickUp ยังมีชุดทดสอบ,การทำงานอัตโนมัติ DevOps, การผสานรวม, และเทมเพลตที่ทรงพลังอีกด้วย ดูด้วยตัวคุณเองทดลองใช้ ClickUp ฟรีวันนี้