(white box, black box) Software Testing
(white box, black box) Software Testing
วิธีการทดสอบจะเแบ่งออกเป็น 2 วิธีคือ- Functional testing (Black box testing)
- Structural (White box testing)
Functional testing (Black box testing)
จะมองทั้งระบบเป็นเหมือน กล่องดำ(black box) ไม่สนใจว่าการทำงานภายในเป็นอย่างไร เช่น การทำงานของเครื่องจักร โดยเราแค่ป้อนคำสั่งให้เครื่องจักร แล้วดูว่าเครื่องจักรทำงานถูกต้องหรือไม่ โดยที่ไม่สนใจกระบวนการ
ทำงานว่าข้างในทำอะไรบ้าง เป็นต้น ส่วนการสร้างกรณีทดสอบจะต้องใช้เอกสารกำหนดคุณลักษณะความต้องการใช้งานซอฟต์แวร์(Requirement specification)
ข้อดีของการทดสอบแบบ functional Testing คือ
- กรณีทดสอบจะไม่ขึ้นกับวิธีการสร้างซอฟต์แวร์ แม้ว่าจะมีการเปลี่ยนแปลงขั้นตอนการทำงานภายใน แต่กรณีทดสอบก็ยังสามารถใช้ได้อยู่
- สามารถออกแบบกรณีทดสอบไปพร้อมๆกับการพัฒนาซอฟต์แวร์ได้ ทำให้ลดเวลาโดยรวมของการพัฒนาซอฟแวร์ลงไปได้
ข้อด้อยของการทดสอบแบบ functional Testing คือ
- กรณีทดสอบอาจมีการซ้ำซ้อนกันได้ โดยอาจจะไปทดสอบซ้ำกับการทำงานเดิมภายใน black box ทำให้เสียเวลาโดยเปล่าประโยชน์
- การทดสอบอาจจะไม่ครอบคลุมการทำงานทั้งหมดภายในblack boxอาจมีช่องว่าที่ไม่ได้ทดสอบโดยที่เราไม่รู้
Structural testing(White box testing)
การทดสอบแบบ white box นั้นจะต้องรู้ว่าซอฟต์แวร์สร้างขึ้นมาอย่างไร และใช้การทำงานนั้นสร้างกรณีทดสอบขึ้นมา
โดยจะต้องกำหนดกรณีทดสอบตามขั้นตอนการทำงานของฟังก์ชันที่สร้างขึ้นมาจริงๆ
การเปรียบเทียบการทำงาน
ทั้งการทดสอบแบบ Black box และ White box มีวัตถุประสงค์เพื่อสร้างกรณีทดสอบขึ้นมาทดสอบซอฟต์แวร์ ในส่วนของ Black box จะอาศัยข้อมูลจาก requirement specification เพียงอย่างเดียวในการสร้างกรณีทดสอบ ส่วนการทดสอบแบบ White box นั้น จะอาศัยขั้นตอนการทำงาน ของซอฟต์แวร์ หรือ source code เพียงอย่างเดียวในการสร้างกรณีทดสอบ ดังนั้นเราจะต้องใช้การทดสอบทั้ง 2 วิธีร่วมกัน เช่น
>> ถ้าเราใช้การทดสอบแบบ White box เพียงอย่างเดียวเราก็จะไม่รู้ว่าเราพัฒนาฟังก์ชันต่างๆ ตาม requirement specification ครบแล้วหรือไม่ และไม่สามารถบอกได้ว่ายังมี requierment specification ส่วนไหนที่ยังไม่ได้พัฒนา
>> ถ้าเราใช้การทดสอบแบบ Black box เพียงอย่างเดียว ในกรณีที่มีการสร้างฟังก์ชันที่นอกเหนือไปจากที่กำหนดไว้ใน requirement specification จะไม่สามารถบอกได้ว่าสร้างฟังก์ชันที่นอกเหนือกับที่กำหนดไว้
***แหล่งที่มาข้อมูล***
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
ความคิดเห็น
แสดงความคิดเห็น