กล่องสีเทาคืออะไร
กล่องสีเทาเป็นการทดสอบซอฟต์แวร์ที่มีความรู้ จำกัด ในการทำงานภายใน การทดสอบกล่องสีเทาเป็นเทคนิคการแฮ็กข้อมูลอย่างมีจริยธรรมซึ่งแฮ็กเกอร์จะต้องใช้ข้อมูลที่ จำกัด เพื่อระบุจุดแข็งและจุดอ่อนของเครือข่ายความปลอดภัยของเป้าหมาย
ทำลายลงกล่องสีเทา
กล่องสีเทาเป็นลูกผสมของการทดสอบกล่องสีขาวซึ่งผู้ทดสอบจะตรวจสอบตรรกะภายในและโครงสร้างของรหัสของซอฟต์แวร์และการทดสอบกล่องดำที่ผู้ทดสอบไม่รู้อะไรเกี่ยวกับรหัสของซอฟต์แวร์เพื่อทำความเข้าใจกับการทดสอบกล่องสีเทา การทดสอบกล่องและการทดสอบกล่องสีขาว
การทดสอบกล่องดำและกล่องขาว
การทดสอบกล่องดำนั้นไม่มีอะไรมากไปกว่าอินพุตของผู้ใช้และสิ่งที่ซอฟท์แวร์ผลิตออกมาจากอินพุตเหล่านั้น การทดสอบกล่องดำไม่จำเป็นต้องมีความรู้ภาษาโปรแกรมหรือรายละเอียดทางเทคนิคใด ๆ เป็นการทดสอบระดับสูงที่ใช้ในการทดสอบระบบและทดสอบการยอมรับ วิศวกรซอฟต์แวร์ต้องการเอกสารข้อกำหนดคุณลักษณะซอฟต์แวร์ (SRS) เพื่อทำการทดสอบกล่องดำ การทดสอบนี้ใช้มุมมองของผู้ใช้ปลายทางที่ผู้ทดสอบกล่องดำไม่ทราบว่าจะสร้างผลลัพธ์จากอินพุตได้อย่างไร
การทดสอบกล่องสีขาวต้องการความรู้เชิงลึกเกี่ยวกับเทคนิคและแพลตฟอร์มที่ใช้ในการสร้างซอฟต์แวร์รวมถึงภาษาการเขียนโปรแกรมที่เกี่ยวข้อง เป็นการทดสอบระดับต่ำที่ใช้ในการทดสอบหน่วยและการทดสอบข้อบ่งชี้ วิศวกรซอฟต์แวร์จำเป็นต้องเข้าใจภาษาการเขียนโปรแกรมที่ใช้ในการสร้างแอปพลิเคชันเพื่อให้สามารถเข้าใจซอร์สโค้ดของมันได้ วัตถุประสงค์หลักของการทดสอบกล่องขาวคือการเสริมสร้างความปลอดภัยตรวจสอบว่าอินพุตและเอาต์พุตไหลผ่านแอปพลิเคชันอย่างไรและปรับปรุงการออกแบบและการใช้งาน เมื่อผู้ทดสอบกล่องขาวไม่ได้รับผลลัพธ์ที่คาดหวังจากอินพุตที่กำหนดผลลัพธ์จะถือว่าเป็นข้อบกพร่องที่ต้องได้รับการแก้ไข
การทดสอบกล่องสีเทา
การทดสอบกล่องสีเทาประกอบด้วยองค์ประกอบที่สำคัญของการทดสอบกล่องดำและขาวเพื่อให้ได้ผลลัพธ์ที่ดีกว่าการทดสอบเพียงอย่างเดียว ทั้งผู้ใช้และนักพัฒนาทำการทดสอบกล่องสีเทาโดยมีความรู้ จำกัด (บางส่วน) ของซอร์สโค้ดของแอปพลิเคชัน การทดสอบกล่องสีเทาสามารถทำได้ด้วยตนเองหรือโดยอัตโนมัติ มันครอบคลุมและใช้เวลามากกว่าการทดสอบกล่องดำ แต่ไม่ครอบคลุมหรือใช้เวลานานกว่าการทดสอบกล่องขาว ผู้ทดสอบกล่องสีเทาต้องการเอกสารการออกแบบโดยละเอียด
การทดสอบกล่องสีเทาเกี่ยวข้องกับการระบุอินพุตการระบุเอาต์พุตการระบุพา ธ หลักและการระบุฟังก์ชั่นย่อย จากนั้นจะย้ายไปยังการพัฒนาอินพุตและเอาต์พุตสำหรับฟังก์ชั่นย่อยดำเนินการกรณีทดสอบสำหรับฟังก์ชั่นย่อยและตรวจสอบผลลัพธ์เหล่านั้น
ตัวอย่างกล่องสีเทา
ผู้ทดสอบกล่องสีเทาอาจตรวจสอบและแก้ไขลิงก์ในเว็บไซต์ หากลิงก์ใช้งานไม่ได้ผู้ทดสอบจะเปลี่ยนรหัส HTML เพื่อลองใช้งานลิงก์จากนั้นตรวจสอบส่วนต่อประสานผู้ใช้อีกครั้งเพื่อดูว่าลิงก์ใช้งานได้หรือไม่ เครื่องทดสอบกล่องสีเทาอาจทดสอบเครื่องคิดเลขออนไลน์ ผู้ทดสอบจะกำหนดอินพุต - สูตรทางคณิตศาสตร์เช่น 1 + 1, 2 * 2, 5–4 และ 15 / 3— จากนั้นตรวจสอบเพื่อดูว่าเครื่องคิดเลขมีเอาต์พุตที่ถูกต้องที่ได้รับจากอินพุตเหล่านั้น เครื่องทดสอบกล่องสีเทาสามารถเข้าถึงรหัส HTML ของเครื่องคิดเลขและสามารถเปลี่ยนแปลงได้หากระบุข้อผิดพลาด
การทดสอบกล่องสีเทาจะดูทั้งส่วนติดต่อผู้ใช้ของแอปพลิเคชันหรือเลเยอร์การนำเสนอและการทำงานภายในหรือรหัส ส่วนใหญ่จะใช้ในการทดสอบการรวมและการทดสอบการเจาะ แต่ไม่เหมาะสำหรับการทดสอบอัลกอริทึม โดยทั่วไปแล้วการทดสอบกล่องสีเทาจะใช้เพื่อทดสอบส่วนติดต่อผู้ใช้ของแอปพลิเคชันความปลอดภัยหรือฟังก์ชันการทำงานออนไลน์ผ่านเทคนิคต่าง ๆ เช่นการทดสอบเมทริกซ์การทดสอบการถดถอยการทดสอบอาเรย์ฉากและการทดสอบรูปแบบ ผู้ทดสอบกล่องสีเทามักจะระบุปัญหาเฉพาะบริบท
“ สีเทา” หมายถึงความสามารถบางส่วนของผู้ทดสอบเพื่อดูการทำงานภายในของแอปพลิเคชัน “ สีขาว” หมายถึงความสามารถในการมองผ่านส่วนต่อประสานของซอฟต์แวร์กับการทำงานภายในและ“ สีดำ” หมายถึงการไร้ความสามารถในการดูการทำงานภายในของซอฟต์แวร์ การทดสอบกล่องสีเทาบางครั้งเรียกว่าการทดสอบโปร่งแสงในขณะที่การทดสอบกล่องสีขาวบางครั้งเรียกว่าการทดสอบที่ชัดเจนและการทดสอบกล่องดำอาจเรียกว่าการทดสอบทึบแสง
