การทดสอบควันคืออะไร?
การทดสอบควันคืออะไร
การทดสอบควัน เป็นกระบวนการทดสอบซอฟต์แวร์ที่ตรวจสอบว่าซอฟต์แวร์ที่นำมาสร้างนั้นเสถียรหรือไม่ การทดสอบแบบ Smoke Testing เป็นการยืนยันว่าทีม QA จะดำเนินการทดสอบซอฟต์แวร์เพิ่มเติมต่อไป โดยประกอบด้วยชุดการทดสอบขั้นต่ำที่ดำเนินการในแต่ละรุ่นเพื่อทดสอบการทำงานของซอฟต์แวร์ การทดสอบแบบ Smoke Testing เรียกอีกอย่างว่า “การทดสอบยืนยันรุ่น” หรือ “การทดสอบความเชื่อมั่น”
กล่าวง่ายๆ ก็คือ การทดสอบควันหมายถึงการตรวจสอบคุณสมบัติที่สำคัญว่าใช้งานได้ และไม่มีตัวหยุดในบิลด์ที่อยู่ระหว่างการทดสอบ เป็นการทดสอบการถดถอยแบบสั้นและรวดเร็วของฟังก์ชันหลัก เป็นการทดสอบง่ายๆ ที่แสดงว่าผลิตภัณฑ์พร้อมสำหรับการทดสอบ ซึ่งจะช่วยตรวจสอบว่าโครงสร้างมีข้อบกพร่องหรือไม่ ทำให้การทดสอบเพิ่มเติมเป็นการเสียเวลาและทรัพยากร
เปรียบเทียบ การทดสอบควันกับสติ
เราจะทำการทดสอบควันเมื่อใด
การทดสอบแบบ Smoke Testing จะดำเนินการทุกครั้งที่มีการพัฒนาฟังก์ชันใหม่ของซอฟต์แวร์และบูรณาการกับบิลด์ที่มีอยู่ซึ่งใช้งานในสภาพแวดล้อม QA/Staging เพื่อให้แน่ใจว่าฟังก์ชันที่สำคัญทั้งหมดทำงานได้อย่างถูกต้องหรือไม่
ในวิธีการทดสอบนี้ ทีมพัฒนาจะปรับใช้บิลด์ใน QA มีการใช้ชุดย่อยของกรณีทดสอบ จากนั้นผู้ทดสอบจะเรียกใช้กรณีทดสอบบนบิลด์ ทีม QA ทดสอบแอปพลิเคชันกับฟังก์ชันการทำงานที่สำคัญ ชุดกรณีทดสอบเหล่านี้ออกแบบมาเพื่อเปิดเผยข้อผิดพลาดที่อยู่ในรุ่น หากผ่านการทดสอบเหล่านี้ ทีมงาน QA จะดำเนินการต่อด้วย การทดสอบสมรรถนะ.
ความล้มเหลวใดๆ บ่งชี้ถึงความจำเป็นในการจัดการระบบกลับไปยังทีมพัฒนา เมื่อใดก็ตามที่มีการเปลี่ยนแปลงในโครงสร้าง เราจะทำการทดสอบควันเพื่อให้มั่นใจถึงความเสถียร
ตัวอย่าง:- เพิ่มปุ่มลงทะเบียนใหม่ในหน้าต่างเข้าสู่ระบบ และบิลด์จะปรับใช้โค้ดใหม่ เราทำการทดสอบแบบควันบุหรี่ในบิลด์ใหม่
การทดสอบควันมีคุณสมบัติเหมาะสมสำหรับการทดสอบอย่างเป็นทางการเพิ่มเติม จุดประสงค์หลักของการทดสอบควันคือการตรวจจับปัญหาสำคัญตั้งแต่เนิ่นๆ การทดสอบควันได้รับการออกแบบมาเพื่อแสดงให้เห็นถึงความเสถียรของระบบและความสอดคล้องกับข้อกำหนด บิลด์ประกอบด้วยไฟล์ข้อมูล ไลบรารี โมดูลที่นำมาใช้ซ้ำได้ทั้งหมด ส่วนประกอบทางวิศวกรรมที่จำเป็นต่อการนำฟังก์ชันผลิตภัณฑ์หนึ่งรายการขึ้นไปไปใช้
จะเกิดอะไรขึ้นถ้าเราไม่ทำการทดสอบควัน
หากเราไม่ทำการทดสอบแบบควันในระยะเริ่มต้น อาจพบข้อบกพร่องในระยะหลังซึ่งอาจมีค่าใช้จ่ายสูง และ ข้อบกพร่อง พบในระยะหลังๆ อาจเป็นตัวขัดขวาง ซึ่งอาจส่งผลต่อการส่งมอบผลงานได้
ใครจะทำการทดสอบควัน
หลังจากปล่อยบิลด์สู่สภาพแวดล้อม QA แล้ว การทดสอบควันจะดำเนินการโดยวิศวกร QA/หัวหน้าฝ่ายควบคุมคุณภาพ เมื่อใดก็ตามที่มีการสร้างใหม่ ทีม QA จะกำหนดฟังก์ชันการทำงานหลักในแอปพลิเคชันเพื่อทำการทดสอบควัน ทีม QA จะตรวจสอบผู้แสดงโชว์ในแอปพลิเคชันที่อยู่ระหว่างการทดสอบ
การทดสอบดำเนินการในสภาพแวดล้อมการพัฒนาบนโค้ดเพื่อให้แน่ใจว่าแอปพลิเคชันถูกต้องก่อนที่จะเผยแพร่บิลด์ไปยัง QA ซึ่งเรียกว่าการทดสอบสติ โดยปกติจะเป็นการทดสอบที่แคบและลึก เป็นกระบวนการที่ตรวจสอบว่าแอปพลิเคชันที่อยู่ระหว่างการพัฒนาตรงตามข้อกำหนดการทำงานขั้นพื้นฐาน
การทดสอบสติจะกำหนดความสมบูรณ์ของขั้นตอนการพัฒนา และตัดสินใจว่าจะผ่านหรือไม่ผ่านผลิตภัณฑ์ซอฟต์แวร์สำหรับขั้นตอนการทดสอบต่อไป
ทำไมเราถึงทำการทดสอบควัน?
การทดสอบควันมีบทบาทสำคัญในการพัฒนาซอฟต์แวร์เนื่องจากช่วยให้มั่นใจถึงความถูกต้องของระบบในระยะเริ่มแรก ด้วยเหตุนี้ เราจึงสามารถประหยัดความพยายามในการทดสอบได้ เป็นผลให้การทดสอบควันทำให้ระบบอยู่ในสถานะที่ดี เมื่อเราเสร็จสิ้นการทดสอบควันแล้ว มีเพียงเราเท่านั้นที่เริ่มการทดสอบการทำงาน
- ตัวหยุดการแสดงทั้งหมดในโครงสร้างจะได้รับการระบุโดยการทดสอบควัน
- การทดสอบควันเสร็จสิ้นหลังจากที่บิลด์ถูกเผยแพร่ไปยัง QA ด้วยความช่วยเหลือของการทดสอบควัน ข้อบกพร่องส่วนใหญ่จะถูกระบุในระยะเริ่มต้นของ การพัฒนาซอฟต์แวร์.
- ด้วยการทดสอบควัน เราทำให้การตรวจจับและแก้ไขข้อบกพร่องที่สำคัญง่ายขึ้น
- ด้วยการทดสอบควัน ทีม QA สามารถค้นหาข้อบกพร่องในฟังก์ชันการทำงานของแอปพลิเคชันที่อาจเกิดจากโค้ดใหม่
- การทดสอบควันพบข้อบกพร่องระดับร้ายแรงที่สำคัญ
1 ตัวอย่าง: หน้าต่างการบันทึก: สามารถย้ายไปยังหน้าต่างถัดไปด้วยชื่อผู้ใช้และรหัสผ่านที่ถูกต้องเมื่อคลิกปุ่มส่ง
2 ตัวอย่าง: ผู้ใช้ไม่สามารถออกจากระบบหน้าเว็บได้
การทดสอบควันทำอย่างไร?
การทดสอบควันมักจะดำเนินการด้วยตนเอง แม้ว่าจะมีความเป็นไปได้ที่จะทำเช่นเดียวกันผ่านระบบอัตโนมัติก็ตาม มันอาจแตกต่างกันไปในแต่ละองค์กร
การทดสอบควันด้วยตนเอง
โดยทั่วไป การทดสอบควันจะดำเนินการด้วยตนเอง แนวทางดังกล่าวแตกต่างกันไปในแต่ละองค์กร มีการทดสอบควันเพื่อให้แน่ใจว่าการนำทางในเส้นทางวิกฤติเป็นไปตามที่คาดไว้ และไม่ขัดขวางการทำงาน เมื่อบิลด์ถูกเผยแพร่ไปยัง QA แล้ว จะมีการดำเนินการกรณีทดสอบฟังก์ชันการทำงานที่มีลำดับความสำคัญสูง และได้รับการทดสอบเพื่อค้นหาข้อบกพร่องร้ายแรงในระบบ หากการทดสอบผ่าน เราจะทำการทดสอบการทำงานต่อไป หากการทดสอบล้มเหลว บิลด์จะถูกปฏิเสธและส่งกลับไปยังทีมพัฒนาเพื่อทำการแก้ไข QA เริ่มการทดสอบควันอีกครั้งด้วยเวอร์ชันบิลด์ใหม่ การทดสอบควันจะดำเนินการกับบิลด์ใหม่และจะรวมเข้ากับบิลด์เก่าเพื่อรักษาความถูกต้องของระบบ ก่อนดำเนินการทดสอบควัน ทีม QA ควรตรวจสอบเวอร์ชันบิลด์ที่ถูกต้อง
การทดสอบควันด้วยระบบอัตโนมัติ
การทดสอบระบบอัตโนมัติ ใช้สำหรับ การทดสอบการถดถอย- อย่างไรก็ตาม เรายังสามารถใช้ชุดกรณีทดสอบอัตโนมัติเพื่อทดสอบ Smoke Test ได้อีกด้วย ด้วยความช่วยเหลือของการทดสอบอัตโนมัติ นักพัฒนาสามารถตรวจสอบบิลด์ได้ทันทีทุกครั้งที่มีบิลด์ใหม่ที่พร้อมสำหรับการใช้งาน
แทนที่จะต้องทดสอบซ้ำด้วยตนเองทุกครั้งที่มีการใช้งานซอฟต์แวร์รุ่นใหม่ จะมีการบันทึกเคสทดสอบแบบ Smoke Test ไว้เพื่อทดสอบกับรุ่นนั้น ซึ่งจะตรวจสอบว่าฟังก์ชันหลักๆ ยังทำงานได้อย่างถูกต้องหรือไม่ หากการทดสอบล้มเหลว ทีมงานสามารถแก้ไขรุ่นและปรับใช้รุ่นนั้นใหม่ได้ทันที วิธีนี้จะช่วยประหยัดเวลาและรับรองคุณภาพรุ่นต่อสภาพแวดล้อม QA
การใช้เครื่องมืออัตโนมัติ วิศวกรทดสอบจะบันทึกขั้นตอนแบบแมนนวลทั้งหมดที่ดำเนินการในการสร้างซอฟต์แวร์
รอบการทดสอบควัน
แผนภูมิขั้นตอนด้านล่างแสดงวิธีดำเนินการทดสอบแบบ Smoke Testing เมื่อสร้างเสร็จใน QA และผ่านการทดสอบ Smoke Testing แล้ว เราจะดำเนินการทดสอบการทำงานต่อไป หากการทดสอบแบบ Smoke Test ล้มเหลว เราจะออกจากการทดสอบจนกว่าจะแก้ไขปัญหาในการสร้างเสร็จ
ข้อดีของการทดสอบควัน
ต่อไปนี้เป็นข้อดีบางประการที่ระบุไว้สำหรับการทดสอบควัน
- ง่ายต่อการทำการทดสอบ
- ข้อบกพร่องจะถูกระบุในระยะแรก
- ปรับปรุงคุณภาพของระบบ
- ช่วยลดความเสี่ยง
- ความคืบหน้าเข้าถึงได้ง่ายขึ้น
- ประหยัดเวลาและความพยายามในการทดสอบ
- ตรวจจับข้อผิดพลาดร้ายแรงและแก้ไขข้อผิดพลาดได้ง่าย
- มันทำงานอย่างรวดเร็ว
- ลดความเสี่ยงในการบูรณาการให้เหลือน้อยที่สุด
ตัวอย่างกรณีทดสอบควัน
ที.ไอดี | สถานการณ์การทดสอบ | DESCRIPTION | ขั้นตอนการทดสอบ | ผลลัพธ์ที่คาดหวัง | ผลลัพธ์ที่แท้จริง | สถานภาพ |
---|---|---|---|---|---|---|
1 | ข้อมูลรับรองการเข้าสู่ระบบที่ถูกต้อง | ทดสอบฟังก์ชันการเข้าสู่ระบบของเว็บแอปพลิเคชันเพื่อให้แน่ใจว่าผู้ใช้ที่ลงทะเบียนจะได้รับอนุญาตให้เข้าสู่ระบบด้วยชื่อผู้ใช้และรหัสผ่าน | 1.เปิดแอปพลิเคชัน 2.นำทางไปยังหน้าเข้าสู่ระบบ 3.กรอกชื่อผู้ใช้ที่ถูกต้อง 4.ป้อนรหัสผ่านที่ถูกต้อง 5.คลิกที่ปุ่มเข้าสู่ระบบ |
การเข้าสู่ระบบควรจะสำเร็จ | อย่างที่คาดไว้ | ส่ง |
2 | การเพิ่มฟังก์ชันรายการ | สามารถเพิ่มสินค้าลงตะกร้าได้ | 1.เลือกรายการหมวดหมู่ 2.หยิบสินค้าลงตะกร้า |
ควรเพิ่มสินค้าลงในรถเข็น | สินค้าไม่ได้รับการเพิ่มลงตะกร้า | ล้มเหลว |
3 | ฟังก์ชั่นออกจากระบบ | ตรวจสอบฟังก์ชันการออกจากระบบ | 1. เลือกปุ่มออกจากระบบ | ผู้ใช้ควรจะออกจากระบบได้ | ผู้ใช้ไม่สามารถออกจากระบบได้ | ล้มเหลว |
สรุป
ในวิศวกรรมซอฟต์แวร์ การทดสอบ Smoke ควรทำในแต่ละบิลด์โดยไม่เกิดข้อผิดพลาด เนื่องจากจะช่วยค้นหาข้อบกพร่องในระยะแรกๆ กิจกรรมการทดสอบควันเป็นขั้นตอนสุดท้ายก่อนที่ซอฟต์แวร์บิลด์จะเข้าสู่ขั้นตอนของระบบ ต้องทำการทดสอบควันกับแต่ละบิลด์ที่เปลี่ยนเป็นการทดสอบ สิ่งนี้ใช้กับการพัฒนาใหม่และการเปิดตัวหลักและรองของระบบ
ก่อนดำเนินการทดสอบควัน ทีม QA จะต้องตรวจสอบให้แน่ใจว่าแอปพลิเคชันที่ทดสอบเป็นเวอร์ชันบิลด์ที่ถูกต้อง เป็นกระบวนการง่ายๆ ซึ่งใช้เวลาน้อยที่สุดในการทดสอบความเสถียรของแอปพลิเคชัน
การทดสอบควันสามารถลดความพยายามในการทดสอบ และสามารถปรับปรุงคุณภาพของแอปพลิเคชันได้ การทดสอบควันสามารถทำได้ด้วยตนเองหรือโดยระบบอัตโนมัติ ทั้งนี้ขึ้นอยู่กับลูกค้าและองค์กร