Test Scenario ในการทดสอบซอฟต์แวร์คืออะไร (ตัวอย่าง)
⚡ สรุปอย่างชาญฉลาด
สถานการณ์การทดสอบในการทดสอบซอฟต์แวร์ กำหนดฟังก์ชันการทำงานใดๆ ที่สามารถตรวจสอบได้ เพื่อให้มั่นใจว่าครอบคลุมพฤติกรรมของแอปพลิเคชันอย่างครบถ้วนภายใต้สภาวะแวดล้อมจริง โดยเน้นการตรวจสอบความถูกต้องแบบครบวงจร การออกแบบการทดสอบที่เน้นผู้ใช้เป็นศูนย์กลาง และการปรับให้สอดคล้องกับข้อกำหนดที่สามารถตรวจสอบย้อนกลับได้ เพื่อให้มั่นใจถึงการตรวจสอบขั้นตอนการทำงานที่สำคัญต่อธุรกิจ
สถานการณ์การทดสอบคืออะไร?
A สถานการณ์ทดสอบ เป็นคำอธิบายระดับสูงของฟังก์ชันการทำงานที่จะทดสอบ แสดงถึงการโต้ตอบของผู้ใช้หรือพฤติกรรมของระบบที่อาจเกิดขึ้น ซึ่งบางครั้งเรียกว่าเงื่อนไขการทดสอบ ในฐานะนักทดสอบ คุณควรลองคิดในมุมมองของผู้ใช้ปลายทาง และทำความเข้าใจสถานการณ์จริงและกรณีการใช้งานของแอปพลิเคชันที่อยู่ระหว่างการทดสอบ (AUT)
สถานการณ์การทดสอบสามารถจำแนกตาม ด้านใดของแอปพลิเคชัน พวกเขามุ่งมั่นที่จะตรวจสอบ ความเข้าใจในประเภทเหล่านี้จะช่วยให้ครอบคลุมฟังก์ชันการทำงานและการโต้ตอบของผู้ใช้ทั้งหมด
ประเภทของสถานการณ์การทดสอบ
- สถานการณ์การทำงาน: สิ่งเหล่านี้จะตรวจสอบว่าฟีเจอร์หรือโมดูลเฉพาะ (เช่น การเข้าสู่ระบบ การสมัคร หรือการชำระเงิน) ทำงานตรงตามข้อกำหนดหรือไม่ โดยมุ่งเน้นไปที่ "สิ่งที่ควรทำ"
- สถานการณ์ที่ไม่ใช่ฟังก์ชัน: สิ่งเหล่านี้จะประเมินว่าระบบทำงานอย่างไร มากกว่าจะประเมินว่าระบบทำอะไร ซึ่งครอบคลุมถึงประสิทธิภาพ ความสามารถในการปรับขนาด ความสามารถในการใช้งาน และความน่าเชื่อถือ
- สถานการณ์ความปลอดภัย: สิ่งเหล่านี้จะประเมินว่าแอปพลิเคชันปกป้องข้อมูลผู้ใช้และป้องกันการเข้าถึงโดยไม่ได้รับอนุญาตหรือช่องโหว่ได้ดีเพียงใด
- สถานการณ์ UI (อินเทอร์เฟซผู้ใช้): สิ่งเหล่านี้ทำให้แน่ใจว่าเค้าโครงภาพ การนำทาง และองค์ประกอบแบบโต้ตอบทำงานได้อย่างเป็นธรรมชาติบนอุปกรณ์และขนาดหน้าจอที่แตกต่างกัน
- สถานการณ์แบบครบวงจร: สิ่งเหล่านี้จำลองเวิร์กโฟลว์ในโลกแห่งความเป็นจริง โดยตรวจสอบว่าโมดูลต่างๆ ทำงานร่วมกันได้อย่างราบรื่น เช่น การค้นหา การเพิ่มลงในรถเข็น และการชำระเงินในแอปอีคอมเมิร์ซ
การทดสอบสถานการณ์เหมือนกับการทดสอบสถานการณ์หรือไม่?
ในขณะที่สถานการณ์การทดสอบกำหนดสิ่งที่จะทดสอบ การทดสอบสถานการณ์ เป็นวิธีการที่ซับซ้อนแบบครบวงจรหรือ เรื่องราวของผู้ใช้จริง ใช้สำหรับการทดสอบ แทนที่จะพึ่งพารายการกรณีทดสอบแต่ละรายการที่ครอบคลุม จุดประสงค์คือเพื่อประเมินประสิทธิภาพของระบบภายใต้เวิร์กโฟลว์ที่เฉพาะเจาะจงและสมจริง
มาศึกษาสิ่งนี้ด้วยความช่วยเหลือของวิดีโอด้านล่าง –
เหตุใดจึงต้องสร้างสถานการณ์การทดสอบ
สถานการณ์ทดสอบถูกสร้างขึ้นด้วยเหตุผลดังต่อไปนี้
- การสร้างสถานการณ์การทดสอบช่วยให้มั่นใจได้ว่ากรณีการใช้งานหลักๆ จะได้รับการครอบคลุมระหว่างการทดสอบ
- สถานการณ์การทดสอบสามารถตรวจสอบและอนุมัติโดยผู้มีส่วนได้ส่วนเสีย เช่น นักวิเคราะห์ธุรกิจ นักพัฒนา และลูกค้า เพื่อให้มั่นใจว่าแอปพลิเคชันที่อยู่ระหว่างการทดสอบ (AUT) ได้รับการทดสอบอย่างละเอียดถี่ถ้วน เพื่อให้แน่ใจว่าซอฟต์แวร์ทำงานได้กับกรณีการใช้งานทั่วไปที่สุด
- พวกเขาทำหน้าที่เป็นเครื่องมือที่รวดเร็วในการกำหนดความพยายามในการทำงานทดสอบ และสร้างข้อเสนอสำหรับลูกค้าหรือจัดระเบียบพนักงาน
- ช่วยระบุธุรกรรมจากต้นทางถึงปลายทางที่สำคัญที่สุดหรือการใช้งานแอปพลิเคชันซอฟต์แวร์จริง
- ในการศึกษาการทำงานแบบครบวงจรของโปรแกรม สถานการณ์การทดสอบถือเป็นสิ่งสำคัญ
👉 ลงทะเบียนเข้าร่วมโครงการทดสอบซอฟต์แวร์สดฟรี
เมื่อใดไม่ควรสร้างสถานการณ์การทดสอบ?
สถานการณ์การทดสอบอาจไม่ถูกสร้างขึ้นเมื่อ
- หลีกเลี่ยงการสร้างสถานการณ์การทดสอบเมื่อแอปพลิเคชันมีความซับซ้อนหรือไม่เสถียร หรือเมื่อระยะเวลาของโครงการสั้นเกินไปสำหรับเอกสารที่มีโครงสร้าง
- โปรเจ็กต์ที่ปฏิบัติตามวิธีการแบบ Agile เช่น Scrum, Kanban อาจไม่สร้างสถานการณ์การทดสอบ
- สถานการณ์ทดสอบอาจไม่ถูกสร้างขึ้นใหม่สำหรับการแก้ไขจุดบกพร่องใหม่หรือ การทดสอบการถดถอย หากมีการบันทึกสถานการณ์การทดสอบไว้แล้วในรอบการทดสอบก่อนหน้า ในกรณีเช่นนี้ สถานการณ์การทดสอบจะต้องมีการบันทึกอย่างละเอียดไว้แล้วในรอบการทดสอบก่อนหน้า โดยเฉพาะอย่างยิ่งสำหรับโครงการบำรุงรักษา
วิธีเขียนสถานการณ์การทดสอบ
ในฐานะผู้ทดสอบ คุณสามารถปฏิบัติตามห้าขั้นตอนเหล่านี้เพื่อสร้างสถานการณ์การทดสอบ-
- ขั้นตอนที่ 1:อ่านเอกสารข้อกำหนด เช่น BRS, SRS, FRS ของระบบที่อยู่ระหว่างการทดสอบ (SUT) คุณยังสามารถอ้างอิงกรณีการใช้งาน หนังสือ คู่มือ ฯลฯ ของแอปพลิเคชันที่จะทดสอบได้อีกด้วย
- ขั้นตอนที่ 2:สำหรับแต่ละข้อกำหนด ให้พิจารณาถึงการดำเนินการและวัตถุประสงค์ที่เป็นไปได้ของผู้ใช้ พิจารณาแง่มุมทางเทคนิคของข้อกำหนดนั้น พิจารณาสถานการณ์ที่อาจเกิดการละเมิดระบบ และประเมินผู้ใช้โดยใช้วิธีคิดแบบแฮ็กเกอร์
- ขั้นตอนที่ 3: หลังจากอ่านเอกสารข้อกำหนดและทำการวิเคราะห์ความรอบคอบแล้ว ให้ระบุสถานการณ์การทดสอบที่แตกต่างกันเพื่อยืนยันคุณลักษณะแต่ละอย่างของซอฟต์แวร์
- ขั้นตอนที่ 4: เมื่อคุณได้ระบุสถานการณ์การทดสอบที่เป็นไปได้ทั้งหมดแล้ว เมทริกซ์การตรวจสอบย้อนกลับ ถูกสร้างขึ้นเพื่อตรวจสอบว่าข้อกำหนดแต่ละข้อมีสถานการณ์การทดสอบที่สอดคล้องกัน
- ขั้นตอนที่ 5: สถานการณ์ที่สร้างขึ้นได้รับการตรวจสอบโดยหัวหน้างานของคุณ Laterพวกเขายังได้รับการตรวจสอบโดยผู้มีส่วนได้ส่วนเสียคนอื่นๆ ในโครงการอีกด้วย
AI สามารถช่วยในเรื่องระบบอัตโนมัติในสถานการณ์การทดสอบได้อย่างไร?
AI กำลังพลิกโฉมระบบอัตโนมัติของสถานการณ์การทดสอบ ด้วยการทำให้ชาญฉลาด รวดเร็ว และปรับตัวได้มากกว่าการเขียนสคริปต์แบบเดิม แทนที่จะต้องเขียนสคริปต์ด้วยตนเองสำหรับการทดสอบทุกครั้ง เครื่องมือที่ขับเคลื่อนด้วย AI สามารถสร้างสถานการณ์การทดสอบโดยอัตโนมัติจากเรื่องราวของผู้ใช้ ข้อกำหนด หรือแม้แต่ข้อมูลในอดีต แพลตฟอร์มที่ใช้การเรียนรู้ของเครื่องจะวิเคราะห์รูปแบบความล้มเหลวในการทดสอบในอดีตเพื่อคาดการณ์จุดที่มีความเสี่ยงสูง ช่วยให้ผู้ทดสอบมุ่งเน้นไปที่สิ่งที่สำคัญอย่างแท้จริง
เฟรมเวิร์กอัตโนมัติที่ขับเคลื่อนด้วย AI สามารถซ่อมแซมสคริปต์ได้ด้วยตัวเอง โดยอัปเดตตัวระบุตำแหน่งโดยอัตโนมัติเมื่อ UI เปลี่ยนแปลง ช่วยลดเวลาในการบำรุงรักษาลงอย่างมาก นอกจากนี้ยังสามารถผสานรวมกับ ท่อ CI/CD การรับประกันการทดสอบอย่างต่อเนื่องและการตอบรับแบบเรียลไทม์
ตัวอย่างเช่น เอ็นจิ้น AI สามารถจำลองการเดินทางของผู้ใช้นับพันคนบนไซต์อีคอมเมิร์ซ ตรวจจับการไหลที่ขาดหาย และแม้แต่แนะนำการครอบคลุมการทดสอบที่เหมาะสมที่สุด
เคล็ดลับในการสร้างสถานการณ์การทดสอบ
- สถานการณ์การทดสอบแต่ละสถานการณ์ควรเชื่อมโยงกับข้อกำหนดหรือเรื่องราวของผู้ใช้อย่างน้อยหนึ่งรายการตามระเบียบวิธีของโครงการ
- ก่อนที่จะสร้างสถานการณ์การทดสอบที่ตรวจสอบข้อกำหนดหลายรายการพร้อมกัน ตรวจสอบให้แน่ใจว่าคุณมีสถานการณ์การทดสอบที่จะตรวจสอบข้อกำหนดนั้นแยกกัน
- หลีกเลี่ยงการสร้างสถานการณ์การทดสอบที่ซับซ้อนจนเกินไปซึ่งครอบคลุมข้อกำหนดหลายข้อ
- จำนวนสถานการณ์อาจมีมาก และมีค่าใช้จ่ายสูงในการรันทั้งหมด พิจารณาจากลำดับความสำคัญของลูกค้า ให้รันเฉพาะสถานการณ์ทดสอบที่เลือกเท่านั้น
เคล็ดลับสำหรับนักเรียน: สถานการณ์การทดสอบอธิบายถึงสิ่งที่ต้องทดสอบ และกรณีทดสอบอธิบายถึงวิธีการทดสอบ
ตัวอย่างที่ 1: สถานการณ์การทดสอบสำหรับแอปพลิเคชันอีคอมเมิร์ซ
สำหรับแอปพลิเคชันอีคอมเมิร์ซ อาจมีสถานการณ์การทดสอบบางประการ
ทดสอบสถานการณ์ที่ 1: ตรวจสอบฟังก์ชันการเข้าสู่ระบบ
เพื่อช่วยให้คุณเข้าใจถึงความแตกต่าง Test Scenario และ กรณีทดสอบกรณีทดสอบเฉพาะสำหรับสถานการณ์การทดสอบนี้จะเป็น
- ตรวจสอบการทำงานของระบบเมื่อป้อนรหัสอีเมลและรหัสผ่านที่ถูกต้อง
- ตรวจสอบการทำงานของระบบเมื่อป้อนรหัสอีเมลและรหัสผ่านไม่ถูกต้อง
- ตรวจสอบการทำงานของระบบเมื่อป้อนรหัสอีเมลที่ถูกต้องและรหัสผ่านไม่ถูกต้อง
- ตรวจสอบพฤติกรรมของระบบเมื่อป้อนรหัสอีเมลและรหัสผ่านไม่ถูกต้อง
- ตรวจสอบพฤติกรรมของระบบเมื่อรหัสอีเมลและรหัสผ่านถูกเว้นว่างและมีการเข้าสู่ระบบ
- ตรวจสอบลืมรหัสผ่านของคุณทำงานได้ตามที่คาดไว้
- ตรวจสอบพฤติกรรมของระบบเมื่อกรอกหมายเลขโทรศัพท์และรหัสผ่านที่ถูกต้อง/ไม่ถูกต้อง
- ตรวจสอบพฤติกรรมของระบบเมื่อเลือก "ให้ฉันเซ็นชื่อ"
ดังที่เห็นได้ชัด Test Cases มีความเฉพาะเจาะจงมากขึ้น
ทดสอบสถานการณ์ที่ 2: ตรวจสอบฟังก์ชันการค้นหา
ทดสอบสถานการณ์ที่ 3: ตรวจสอบสินค้า Descriptไอออนเพจ
ทดสอบสถานการณ์ที่ 4: ตรวจสอบฟังก์ชันการชำระเงิน
ทดสอบสถานการณ์ที่ 5: ตรวจสอบประวัติการสั่งซื้อ
นอกเหนือจาก 5 สถานการณ์เหล่านี้ นี่คือรายการสถานการณ์อื่นๆ ทั้งหมด
- ตรวจสอบพฤติกรรมของหน้าแรกสำหรับลูกค้าที่กลับมา
- ตรวจสอบหมวดหมู่/หน้าผลิตภัณฑ์
- ตรวจสอบหน้าบริการลูกค้า/ติดต่อ
- ตรวจสอบหน้าข้อเสนอรายวัน
ตัวอย่างที่ 2: สถานการณ์การทดสอบสำหรับไซต์ธนาคาร
สถานการณ์ทดสอบ 1: ตรวจสอบฟังก์ชันการเข้าสู่ระบบและการรับรองความถูกต้อง
สถานการณ์ทดสอบ 2: สามารถโอนเงินเช็คได้
สถานการณ์ทดสอบ 3: สามารถดูใบแจ้งยอดบัญชีเช็คได้
สถานการณ์ทดสอบ 4: สามารถสร้างเช็คฝากประจำ/ฝากประจำได้
และอื่น ๆ ...
เทมเพลตสถานการณ์ทดสอบ
ดาวน์โหลดเทมเพลตสถานการณ์การทดสอบ Excel(.xlsx)
ความท้าทายและข้อผิดพลาดทั่วไปในสถานการณ์การทดสอบ
การสร้างสถานการณ์การทดสอบที่มีประสิทธิภาพฟังดูง่าย แต่บ่อยครั้งก็มาพร้อมกับปัญหา นี่คือความท้าทายและข้อผิดพลาดทั่วไปที่นักทดสอบต้องเผชิญ:
- ข้อกำหนดที่ไม่ชัดเจน: ข้อกำหนดที่คลุมเครือหรือเปลี่ยนแปลงนำไปสู่สถานการณ์ที่ไม่สมบูรณ์หรือไม่เกี่ยวข้อง
- สถานการณ์ที่ทับซ้อนกัน: สถานการณ์ซ้ำซ้อนทำให้เสียเวลาและสร้างความสับสนในการดำเนินการทดสอบ
- การละเว้นกรณีขอบ: การมุ่งเน้นเฉพาะเส้นทางทั่วไปจะทำให้มองข้ามข้อบกพร่องสำคัญ
- การจัดลำดับความสำคัญไม่ดี: การปฏิบัติต่อสถานการณ์ทั้งหมดอย่างเท่าเทียมกันจะทำให้การทดสอบคุณสมบัติที่มีผลกระทบสูงล่าช้า
- รายละเอียดมากเกินไป: สถานการณ์ที่ซับซ้อนเกินไปทำให้การบำรุงรักษาทำได้ยากและลดความคล่องตัว
- ขาดการตรวจสอบย้อนกลับ: การขาดการเชื่อมโยงระหว่างข้อกำหนดและสถานการณ์ทำให้เกิดช่องว่างการครอบคลุม
- การละเลยความพร้อมของระบบอัตโนมัติ: การเขียนสถานการณ์ที่ไม่เหมาะกับการทำงานอัตโนมัติจะจำกัดความสามารถในการปรับขนาด







