ข้อมูลเป็นหัวใจสำคัญของซอฟต์แวร์ทุกแอปพลิเคชันดังนั้นไฟล์ ซึ่งเป็นที่เก็บข้อมูลนั้น แต่ด้วยการเพิ่มขนาดของข้อมูลหรือความซับซ้อนของฐานข้อมูลก็เพิ่มขึ้นทำให้ยากต่อการจัดการกับข้อมูล ดังนั้นการตรวจสอบข้อมูลจึงมีความจำเป็นมาก ซึ่งการทดสอบฐานข้อมูลมีประโยชน์และช่วยในการตรวจสอบคุณภาพความปลอดภัยและความถูกต้องของข้อมูลที่แอปพลิเคชันกำลังดึงหรือจัดเก็บลงในฐานข้อมูล ผ่านสื่อกลางของบทความนี้ฉันจะให้ข้อมูลเชิงลึกที่สมบูรณ์แก่คุณ
ด้านล่างนี้เป็นหัวข้อที่กล่าวถึงในบทช่วยสอนนี้:
- การทดสอบฐานข้อมูลคืออะไร?
- เหตุใดจึงต้องมีการทดสอบฐานข้อมูล
- ประเภทของการทดสอบฐานข้อมูล
- ขั้นตอนการทดสอบฐานข้อมูล
- เครื่องมือทดสอบฐานข้อมูล
มาเริ่มกันเลย
การทดสอบฐานข้อมูลคืออะไร?
ก่อนที่ฉันจะพูดถึงการทดสอบฐานข้อมูลคืออะไรขอให้ฉันสรุปเกี่ยวกับฐานข้อมูลก่อนฐานข้อมูลเป็นเพียงการรวบรวมข้อมูลอย่างเป็นระบบซึ่งจัดเก็บข้อมูลและช่วยในการจัดการข้อมูล การจัดการข้อมูลกลายเป็นเรื่องง่ายมากโดยใช้ฐานข้อมูลเหล่านี้เป็น databases ใช้ออบเจ็กต์สำหรับจัดการข้อมูลเช่นตารางสำหรับจัดเก็บข้อมูลมุมมองสำหรับการนำเสนอข้อมูลฟังก์ชันและทริกเกอร์สำหรับการจัดการข้อมูล
ตอนนี้การทดสอบฐานข้อมูลหมายถึงกระบวนการตรวจสอบความถูกต้องของข้อมูลที่ถูกเก็บไว้ในฐานข้อมูลโดยการตรวจสอบวัตถุที่ควบคุมข้อมูลและฟังก์ชันต่างๆที่อยู่รอบ ๆ โดยทั่วไปกิจกรรมต่างๆเช่นการตรวจสอบความถูกต้องของข้อมูลการทดสอบความสมบูรณ์ของข้อมูลการตรวจสอบประสิทธิภาพที่เกี่ยวข้องการทดสอบขั้นตอนต่างๆทริกเกอร์และฟังก์ชันในฐานข้อมูลจะครอบคลุมในระหว่างการทดสอบฐานข้อมูล
แต่ในการดำเนินการทดสอบฐานข้อมูลการมีความรู้เกี่ยวกับ SQL เป็นสิ่งสำคัญมาก ไม่ต้องกังวลหากคุณไม่มีความเชี่ยวชาญที่จำเป็นคุณสามารถอ่านบทความนี้ได้ที่ พื้นฐาน SQL เพื่อเริ่มต้นใช้งาน
ทำไมต้องทดสอบฐานข้อมูล?
อย่างที่เราทราบกันดีว่าฐานข้อมูลคือที่ทิ้งข้อมูลซึ่งข้อมูลจะถูกรวบรวมเป็นจำนวนมหาศาลและจัดเก็บในรูปแบบที่มีโครงสร้าง แม้ว่า (DataBase Management System) จัดเตรียมวิธีการจัดการเรียกและจัดเก็บข้อมูลนี้อย่างเป็นระบบมีบางกรณีที่ข้อมูลอาจซ้ำซ้อนซ้ำกัน ฯลฯ ในกรณีเช่นนี้การทดสอบฐานข้อมูลจะเป็นภาพที่ช่วยเราในการตรวจสอบความถูกต้องของข้อมูล ด้านล่างนี้ฉันได้ระบุประเด็นต่างๆตามฐานข้อมูลที่ต้องได้รับการตรวจสอบ:
- การแมปข้อมูล
การทำแผนที่ข้อมูลเป็นส่วนสำคัญของการทดสอบฐานข้อมูลซึ่งมุ่งเน้นไปที่การตรวจสอบความถูกต้องของข้อมูลที่ข้ามไปมาระหว่างแอปพลิเคชันและฐานข้อมูลส่วนหลัง - การตรวจสอบคุณสมบัติของกรด
กรด หมายถึง ถึง ความเป็นทอม ค onsistency, ผม ความโดดเดี่ยวและ ง ความสามารถในการเล่น นี่เป็นสิ่งสำคัญอีกประการหนึ่งที่ต้องได้รับการยืนยันกับธุรกรรมฐานข้อมูลแต่ละรายการ- ปรมาณู : ซึ่งหมายความว่าธุรกรรมฐานข้อมูลทั้งหมดเป็นแบบปรมาณูนั่นคือธุรกรรมอาจทำให้เกิดความสำเร็จหรือล้มเหลว หรือที่เรียกว่า ทั้งหมดหรือไม่มีอะไร .
- ความสม่ำเสมอ : ซึ่งหมายความว่าสถานะของฐานข้อมูลจะยังคงใช้ได้หลังจากการทำธุรกรรมเสร็จสิ้น
- การแยกตัว : ซึ่งหมายความว่าสามารถดำเนินการธุรกรรมหลายรายการพร้อมกันโดยไม่ส่งผลกระทบต่อกันและกันและเปลี่ยนแปลงสถานะฐานข้อมูล
- ความทนทาน : หมายความว่าเมื่อมีการทำธุรกรรมแล้วจะรักษาการเปลี่ยนแปลงไว้โดยไม่เกิดความล้มเหลวโดยไม่คำนึงถึงผลกระทบของปัจจัยภายนอก
- ความสมบูรณ์ของข้อมูล
การทดสอบความสมบูรณ์ของข้อมูลของฐานข้อมูลหมายถึงกระบวนการประเมินกระบวนการการดำเนินงานและวิธีการทุกประเภทที่ใช้ในการเข้าถึงจัดการและอัปเดตฐานข้อมูลหรือที่เรียกว่า ครูเอล การดำเนินงาน สิ่งนี้มุ่งเน้นไปที่การทดสอบความถูกต้องและความสอดคล้องของข้อมูลที่จัดเก็บในฐานข้อมูลเท่านั้นเพื่อให้เราได้ผลลัพธ์ที่คาดหวังหรือต้องการ
- การปฏิบัติตามกฎทางธุรกิจ
ด้วยการเพิ่มขึ้นของความซับซ้อนของฐานข้อมูลส่วนประกอบต่างๆเช่นข้อ จำกัด เชิงสัมพันธ์ทริกเกอร์ขั้นตอนการจัดเก็บ ฯลฯ ก็เริ่มมีความซับซ้อนเช่นกัน เพื่อหลีกเลี่ยงปัญหานี้ผู้ทดสอบจะจัดเตรียมแบบสอบถาม SQL ซึ่งเหมาะสมเพียงพอที่จะตรวจสอบความถูกต้องของวัตถุที่ซับซ้อน
ประเภทของการทดสอบฐานข้อมูล
การทดสอบฐานข้อมูลมี 3 ประเภทซึ่งฉันได้ระบุไว้ด้านล่าง:
ตอนนี้เรามาดูแต่ละประเภทเหล่านี้และประเภทย่อยทีละประเภท
การทดสอบโครงสร้าง
การทดสอบฐานข้อมูลโครงสร้างเป็นกระบวนการตรวจสอบความถูกต้องขององค์ประกอบทั้งหมดที่มีอยู่ภายในที่เก็บข้อมูลและส่วนใหญ่จะใช้สำหรับการจัดเก็บข้อมูล ผู้ใช้ปลายทางไม่สามารถจัดการองค์ประกอบเหล่านี้ได้โดยตรง การตรวจสอบความถูกต้องของเซิร์ฟเวอร์ฐานข้อมูลเป็นหนึ่งในข้อพิจารณาที่สำคัญที่สุดและผู้ทดสอบที่จัดการเพื่อดำเนินการในขั้นตอนนี้ให้สำเร็จได้รับความเชี่ยวชาญในการสืบค้น SQL
การทดสอบโครงสร้างประเภทต่างๆ ได้แก่ :
การทดสอบสคีมา
การทดสอบประเภทนี้เรียกอีกอย่างว่าการทดสอบการแมปและดำเนินการเพื่อให้แน่ใจว่าการแม็ปสคีมาของส่วนหน้าและส่วนหลังตรงกัน จุดตรวจที่สำคัญบางประการของการทดสอบนี้ ได้แก่ :
- ตรวจสอบความถูกต้องของรูปแบบสคีมาประเภทต่างๆที่เชื่อมโยงกับฐานข้อมูล
- ต้องมีการยืนยันสำหรับตาราง / มุมมอง / คอลัมน์ที่ไม่ได้แมป
- จำเป็นต้องมีการตรวจสอบเพื่อให้แน่ใจว่าฐานข้อมูลที่แตกต่างกันในสภาพแวดล้อมที่มีการแมปแอปพลิเคชันโดยรวมมีความสอดคล้องกัน
- จัดเตรียมเครื่องมือต่างๆสำหรับการตรวจสอบสคีมาฐานข้อมูล
ตารางฐานข้อมูลและการทดสอบคอลัมน์
จุดตรวจที่สำคัญบางประการของการทดสอบนี้ ได้แก่ :
- ความเข้ากันได้ของฟิลด์ฐานข้อมูลและการแมปคอลัมน์ที่ส่วนหลังและส่วนหน้า
- ตรวจสอบความยาวและรูปแบบการตั้งชื่อของฟิลด์ฐานข้อมูลและคอลัมน์ตามข้อกำหนด
- การตรวจจับและตรวจสอบความถูกต้องของตาราง / คอลัมน์ฐานข้อมูลที่ไม่ได้ใช้ / ไม่ได้แมป
- ตรวจสอบความเข้ากันได้ของชนิดข้อมูลและความยาวฟิลด์ที่คอลัมน์ฐานข้อมูลแบ็กเอนด์ด้วยส่วนหน้าของแอปพลิเคชัน
- ตรวจสอบว่าผู้ใช้สามารถจัดหาอินพุตที่ต้องการโดยใช้ฟิลด์ฐานข้อมูลซึ่งระบุไว้ในเอกสารข้อกำหนดข้อกำหนดทางธุรกิจ
การทดสอบคีย์และดัชนี
จุดตรวจที่สำคัญบางประการของการทดสอบนี้ ได้แก่ :
- ตรวจสอบให้แน่ใจว่าจำเป็น คีย์หลัก และ คีย์ต่างประเทศ มีข้อ จำกัด อยู่แล้วในตารางที่ต้องการ
- ตรวจสอบการอ้างอิงของคีย์ต่างประเทศ
- ตรวจสอบให้แน่ใจว่าในสองตารางประเภทข้อมูลของคีย์หลักและคีย์ต่างประเทศที่เกี่ยวข้องนั้นเหมือนกัน
- ตรวจสอบชื่อของคีย์และดัชนีทั้งหมดตามหลักการตั้งชื่อ
- ตรวจสอบฟิลด์ที่ต้องการและดัชนีขนาดและความยาว
- ตรวจสอบการสร้างดัชนีคลัสเตอร์และดัชนีที่ไม่ใช่คลัสเตอร์ในตารางที่จำเป็นตามข้อกำหนดทางธุรกิจ
การทดสอบขั้นตอนที่จัดเก็บ
จุดตรวจที่สำคัญบางประการของการทดสอบนี้ ได้แก่ :
- ตรวจสอบการยอมรับข้อกำหนดมาตรฐานการเข้ารหัสที่จำเป็นข้อยกเว้นและการจัดการข้อผิดพลาดสำหรับโพรซีเดอร์ที่จัดเก็บไว้ทั้งหมดโดยทีมพัฒนาในโมดูลทั้งหมดของแอปพลิเคชันที่อยู่ระหว่างการทดสอบ
- ตรวจสอบให้แน่ใจว่าทีมพัฒนาได้ครอบคลุมเงื่อนไข / ลูปทั้งหมดแล้วโดยใช้ข้อมูลอินพุตที่จำเป็นกับแอปพลิเคชันที่อยู่ระหว่างการทดสอบ
- ตรวจสอบว่าทีมพัฒนาได้ใช้การดำเนินการ TRIM อย่างถูกต้องหรือไม่ในแต่ละครั้งที่ดึงข้อมูลจากตารางฐานข้อมูลที่ระบุ
- ตรวจสอบให้แน่ใจว่าเอาต์พุตที่ต้องการถูกสร้างขึ้นโดยดำเนินการ Stored Procedures ด้วยตนเอง
- ตรวจสอบให้แน่ใจว่าฟิลด์ตารางได้รับการอัพเดตตามที่ระบุโดยแอ็พพลิเคชันภายใต้การทดสอบโดยดำเนินการ Stored Procedures ด้วยตนเอง
- ตรวจสอบให้แน่ใจว่าทริกเกอร์ที่ต้องการถูกเรียกโดยปริยายโดยการดำเนินการ Stored Procedures
- ตรวจหาและตรวจสอบขั้นตอนการจัดเก็บที่ไม่ได้ใช้
- การตรวจสอบเงื่อนไข Null ที่ระดับฐานข้อมูล
- ตรวจสอบให้แน่ใจว่ากระบวนงานและฟังก์ชันที่เก็บไว้ทั้งหมดได้ถูกดำเนินการและทดสอบบนฐานข้อมูลเปล่าที่อยู่ระหว่างการทดสอบ
- ตรวจสอบการรวมโดยรวมของโมดูลโพรซีเดอร์ที่จัดเก็บตามที่ระบุไว้ในข้อกำหนดของแอปพลิเคชันภายใต้การทดสอบ
การทดสอบทริกเกอร์
จุดตรวจที่สำคัญบางประการของการทดสอบนี้ ได้แก่ :
- ตรวจสอบว่ามีการปฏิบัติตามข้อกำหนดการเข้ารหัสที่จำเป็นในขั้นตอนการเข้ารหัสของทริกเกอร์
- ตรวจสอบให้แน่ใจว่าทริกเกอร์ที่ดำเนินการเป็นไปตามเงื่อนไขที่จำเป็นสำหรับธุรกรรม DML ที่เกี่ยวข้อง
- ตรวจสอบว่าข้อมูลได้รับการอัปเดตอย่างถูกต้องหรือไม่เมื่อเรียกใช้ทริกเกอร์แล้ว
- ตรวจสอบฟังก์ชันการทำงานเช่นอัปเดตแทรกลบทริกเกอร์การทำงานของแอปพลิเคชันที่อยู่ระหว่างการทดสอบ
การตรวจสอบเซิร์ฟเวอร์ฐานข้อมูล
จุดตรวจที่สำคัญบางประการของการทดสอบนี้ ได้แก่ :
วิธีการเริ่มต้น AWS CLI
- ตรวจสอบการกำหนดค่าเซิร์ฟเวอร์ฐานข้อมูลตามที่ระบุไว้ในข้อกำหนดทางธุรกิจ
- ตรวจสอบให้แน่ใจว่าผู้ใช้ที่ต้องการดำเนินการเฉพาะระดับการดำเนินการที่ต้องการโดยแอปพลิเคชันภายใต้การทดสอบ
- ตรวจสอบให้แน่ใจว่าเซิร์ฟเวอร์ฐานข้อมูลสามารถรองรับความต้องการของจำนวนธุรกรรมสูงสุดของผู้ใช้ที่อนุญาตตามข้อกำหนดข้อกำหนดทางธุรกิจ
การทดสอบการทำงาน
การทดสอบฐานข้อมูลเชิงหน้าที่เป็นกระบวนการที่ทำให้มั่นใจได้ว่าธุรกรรมและการดำเนินการที่ดำเนินการโดยผู้ใช้ปลายทางนั้นสอดคล้องกับคุณสมบัติทางธุรกิจ
การทดสอบการทำงานประเภทต่างๆ ได้แก่ :
- การทดสอบกล่องดำ
การทดสอบกล่องดำหมายถึงกระบวนการที่ตรวจสอบฟังก์ชันต่างๆโดยการตรวจสอบการรวมฐานข้อมูล ในกรณีนี้การทดสอบมักจะง่ายและใช้เพื่อตรวจสอบข้อมูลขาเข้าและขาออกจากฟังก์ชัน มีการใช้เทคนิคต่างๆเช่นเทคนิคการสร้างกราฟตามเหตุผลการวิเคราะห์ค่าขอบเขตและการแบ่งพาร์ติชันที่เท่ากันเพื่อทดสอบการทำงานของฐานข้อมูล โดยทั่วไปจะดำเนินการในขั้นตอนการพัฒนาระยะแรกและมีค่าใช้จ่ายน้อยกว่าเมื่อเทียบกับการทดสอบการทำงานอื่น ๆ แต่มันมาพร้อมกับข้อบกพร่องบางอย่างเช่นข้อผิดพลาดบางอย่างไม่สามารถตรวจพบได้และไม่มีข้อกำหนดเกี่ยวกับจำนวนโปรแกรมที่ควรทดสอบ
- การทดสอบกล่องสีขาว
การทดสอบกล่องสีขาวเกี่ยวข้องกับโครงสร้างภายในของฐานข้อมูลและผู้ใช้ไม่ทราบรายละเอียดข้อกำหนด การทดสอบนี้ต้องการทริกเกอร์ฐานข้อมูลและการทดสอบมุมมองตรรกะซึ่งสนับสนุนการปรับโครงสร้างฐานข้อมูล ยิ่งไปกว่านั้นฟังก์ชันฐานข้อมูลทริกเกอร์มุมมอง แบบสอบถาม SQL ได้รับการทดสอบในเรื่องนี้ด้วย การทดสอบกล่องสีขาวใช้เพื่อตรวจสอบความถูกต้องของตารางฐานข้อมูลโมเดลข้อมูลสคีมาฐานข้อมูล ฯลฯ โดยยึดตามกฎของ Referential Integrity และเลือกค่าตารางเริ่มต้นเพื่อตรวจสอบความสอดคล้องของฐานข้อมูลเทคนิคเช่นการครอบคลุมเงื่อนไขการครอบคลุมการตัดสินใจการครอบคลุมใบแจ้งยอด ฯลฯ มักใช้ในการทดสอบ White Box ซึ่งแตกต่างจากการทดสอบกล่องดำข้อผิดพลาดในการเข้ารหัสสามารถตรวจพบได้ง่ายเพื่อกำจัดข้อบกพร่องภายในที่มีอยู่ในฐานข้อมูล ข้อเสียเปรียบประการเดียวของการทดสอบประเภทนี้คือไม่ครอบคลุมคำสั่ง SQL
การทดสอบแบบไม่ใช้งาน
การทดสอบที่ไม่สามารถใช้งานได้คือกระบวนการในการทดสอบภาระการทดสอบความเครียดการตรวจสอบข้อกำหนดขั้นต่ำของระบบที่จำเป็นเพื่อให้เป็นไปตามข้อกำหนดทางธุรกิจพร้อมกับการตรวจจับความเสี่ยงและการเพิ่มประสิทธิภาพของฐานข้อมูล
การทดสอบแบบไม่ใช้งานประเภทหลัก ได้แก่ :
- โหลดการทดสอบ
หน้าที่หลักของการทดสอบโหลดคือการตรวจสอบผลกระทบด้านประสิทธิภาพของธุรกรรมที่รันอยู่ส่วนใหญ่ในฐานข้อมูล ในการทดสอบนี้ผู้ทดสอบจะต้องตรวจสอบเงื่อนไขต่อไปนี้ & ลบ
- เวลาตอบสนองที่จำเป็นสำหรับการดำเนินธุรกรรมสำหรับผู้ใช้หลายคนที่อยู่จากระยะไกลคืออะไร?
- ฐานข้อมูลใช้เวลาในการดึงข้อมูลบันทึกเฉพาะเวลาเท่าใด
- การทดสอบความเครียด
การทดสอบความเครียดเป็นกระบวนการทดสอบที่ดำเนินการเพื่อระบุจุดพักของระบบ ดังนั้นในการทดสอบนี้แอปพลิเคชันจะถูกโหลดจนกว่าระบบจะล้มเหลวจุดนี้เรียกว่า เบรกพอยต์ ของระบบฐานข้อมูล เครื่องมือทดสอบความเครียดที่ใช้กันทั่วไปคือ LoadRunner และ WinRunner .
ตอนนี้เรามาดูกันว่าขั้นตอนต่างๆที่เกี่ยวข้องกับการทดสอบฐานข้อมูลมีอะไรบ้าง
ขั้นตอนการทดสอบฐานข้อมูล
การทดสอบ DB ไม่ใช่กระบวนการที่น่าเบื่อและรวมถึงขั้นตอนต่างๆในวงจรการทดสอบฐานข้อมูลตามกระบวนการทดสอบ
ขั้นตอนสำคัญในการทดสอบฐานข้อมูล ได้แก่
- ตั้งค่าข้อกำหนดเบื้องต้นของการทดสอบ
- ดำเนินการทดสอบ
- ตรวจสอบสถานะการทดสอบ
- ตรวจสอบผลลัพธ์
- รวมและเผยแพร่รายงาน
ตอนนี้คุณได้ทราบแล้วว่าการทดสอบฐานข้อมูลคืออะไรและจะดำเนินการอย่างไรตอนนี้ผมขอแนะนำเครื่องมือต่างๆที่ใช้สำหรับการทดสอบฐานข้อมูลเป็นหลัก
เครื่องมือทดสอบฐานข้อมูล
มีเครื่องมือมากมายในตลาดที่ใช้ในการสร้างข้อมูลการทดสอบจัดการและสุดท้ายทำการทดสอบฐานข้อมูลเช่นการทดสอบการโหลดและการทดสอบการถดถอยเป็นต้นด้านล่างนี้ฉันได้ระบุเครื่องมือที่ต้องการมากที่สุดไว้ดังนี้:
ประเภท | เครื่องมือ |
เครื่องมือรักษาความปลอดภัยของข้อมูล |
|
โหลดเครื่องมือทดสอบ |
|
ทดสอบเครื่องมือสร้างข้อมูล |
|
ทดสอบเครื่องมือการจัดการข้อมูล |
|
เครื่องมือทดสอบหน่วย |
|
นั่นคือทั้งหมดที่เกี่ยวกับการทดสอบฐานข้อมูล ด้วยเหตุนี้ฉันจึงขอสรุปบทความนี้ ฉันหวังว่าบทความนี้จะช่วยคุณในการเพิ่มมูลค่าให้กับความรู้ของคุณ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ SQL หรือฐานข้อมูลคุณสามารถดูรายการเรื่องรออ่านที่ครอบคลุมของเราได้ที่นี่: .
หากคุณต้องการรับการฝึกอบรมที่มีโครงสร้างเกี่ยวกับ MySQL โปรดดูที่ไฟล์ ซึ่งมาพร้อมกับการฝึกอบรมสดที่นำโดยผู้สอนและประสบการณ์โครงการในชีวิตจริง การฝึกอบรมนี้จะช่วยให้คุณเข้าใจ MySQL ในเชิงลึกและช่วยให้คุณมีความเชี่ยวชาญในเรื่องนั้น ๆ
มีคำถามสำหรับเรา? โปรดระบุไว้ในส่วนความคิดเห็นของ ' การทดสอบฐานข้อมูล ” แล้วฉันจะติดต่อกลับไป