การทดสอบควันคืออะไร?

การทดสอบควันคืออะไร

การทดสอบควัน เป็นกระบวนการทดสอบซอฟต์แวร์ที่ตรวจสอบว่าซอฟต์แวร์ที่นำมาสร้างนั้นเสถียรหรือไม่ การทดสอบแบบ 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 จะต้องตรวจสอบให้แน่ใจว่าแอปพลิเคชันที่ทดสอบเป็นเวอร์ชันบิลด์ที่ถูกต้อง เป็นกระบวนการง่ายๆ ซึ่งใช้เวลาน้อยที่สุดในการทดสอบความเสถียรของแอปพลิเคชัน

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