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

การทดสอบความเสถียรเรียกอีกอย่างว่าโหลดหรือ การทดสอบความอดทน.
ความเสี่ยงหากระบบที่อยู่ระหว่างการทดสอบไม่ผ่านการทดสอบความเสถียร
สำหรับแอปพลิเคชันที่อยู่ระหว่างการทดสอบซึ่งมีผู้ใช้จำนวนมากเข้ามาใช้งานและแอปพลิเคชันที่ต้องทำงานเป็นเวลาหลายเดือนโดยไม่ต้องรีสตาร์ท อาจเกิดปัญหาหลายประการ:
ข้อผิดพลาดที่อาจเกิดขึ้นได้
- ระบบช้าลง
- ระบบประสบปัญหาการทำงาน
- ระบบจะแสดงพฤติกรรมแบบมีสาย
- ระบบล่มไปเลย
ในสาขาวิศวกรรมซอฟต์แวร์ การทดสอบความเสถียร โดยทั่วไปจะเกี่ยวข้องกับการใช้งานระบบกับผู้ใช้จำนวนมาก (เสมือน) และการวัดพารามิเตอร์ประสิทธิภาพเพื่อตรวจสอบว่าระบบสามารถรองรับโหลดที่คาดการณ์ไว้ได้หรือไม่
ทำไมต้องทำการทดสอบความเสถียร
การทดสอบประเภทนี้จะช่วยให้ผู้ใช้เข้าใจถึงวิธีที่ระบบจะทำงานในสถานการณ์จริง
ดังนั้นการทดสอบความเสถียรทำให้คุณสามารถตรวจสอบ
- ให้ความมั่นใจในความเสถียรของระบบของคุณภายใต้การทดสอบ
- ตรวจสอบให้แน่ใจว่าระบบของคุณสามารถจัดการกับโปรแกรมขนาดใหญ่ได้
- ตรวจสอบประสิทธิภาพของระบบของคุณ
- ทดสอบความเสถียรของระบบภายใต้ความเครียด
มีบทบาทสำคัญในการพัฒนาผลิตภัณฑ์เนื่องจากใช้เพื่อกำหนดข้อจำกัดของผลิตภัณฑ์ซอฟต์แวร์ที่อยู่ระหว่างการทดสอบก่อนวางจำหน่ายหรือพื้นที่ที่ต้องปรับปรุงเพิ่มเติมก่อนที่ผลิตภัณฑ์จะเผยแพร่หรือที่การผลิต
ตัวอย่างเทคนิคการทดสอบความเสถียรที่พบบ่อยมากคือ
OnLine Sการกระโดด Portals: การทดสอบความเสถียรจะตรวจสอบว่าเว็บไซต์จะทำงานอย่างไรเมื่อ –
- มีการป้อนข้อมูลจำนวนมากในช่วงเวลาเร่งด่วน
- จำนวนการเข้าชมในช่วงเวลาหนึ่งๆ
- ปัญหาการโหลดหน้าในเวลาเดียวกัน
- พฤติกรรมของระบบ
- การตอบสนองของระบบและอื่นๆ อีกมากมายตามมา การทดสอบความเสถียร
ตัวอย่างอื่น
A ซีพียู การทดสอบเป็นรูปแบบการทดสอบความเสถียรที่เป็นที่นิยมภายใต้ การทดสอบประสิทธิภาพ เทคนิค. การทดสอบนี้จะตรวจสอบความเสถียรของโปรเซสเซอร์และยังติดตามประสิทธิภาพเมื่อเวิร์คโหลดของโปรเซสเซอร์เพิ่มขึ้น
วิธีการทดสอบความเสถียร
- เพื่อกำหนดขอบเขตและวัตถุประสงค์ของการทดสอบ เราต้องตรวจสอบให้แน่ใจว่าแอปพลิเคชันเซิร์ฟเวอร์ไม่ขัดข้องระหว่างการดำเนินการทดสอบโหลด
- เพื่อระบุปัญหาทางธุรกิจ ให้ตรวจสอบประสิทธิภาพของระบบและโหลดตามมุมมองของผู้ใช้
- เพื่อมอบหมายความรับผิดชอบและบทบาทที่แตกต่างกัน เช่น -การสร้างแผนการทดสอบ กรณีทดสอบ การออกแบบ การทบทวนกรณีทดสอบ การดำเนินการทดสอบ ฯลฯ
- เพื่อให้แน่ใจว่าการทดสอบส่งมอบภายในเวลาที่กำหนด
- เพื่อความเหมาะสม โหลดการทดสอบ ทีมงานเครื่องมือและประสบการณ์ก็นำเสนอเช่นเดียวกัน
- เพื่อวัดความเสี่ยงและต้นทุนที่เกี่ยวข้องกับการทดสอบ ซึ่งจะเป็นตัวกำหนดต้นทุนของการดำเนินการแต่ละครั้งในแง่ของการใช้งาน CPU และหน่วยความจำ
- กำหนด ข้อบกพร่อง การติดตามและการรายงานและการทำแผนที่ที่เหมาะสมกับข้อกำหนด
กรณีทดสอบสำหรับการทดสอบความเสถียรของประสิทธิภาพของ CPU
- เพื่อตรวจสอบขีดจำกัดบนของระบบ
- ระบบล่มหรือกู้คืนได้อย่างไร
- จำนวนธุรกรรมทั้งหมดที่เสร็จสมบูรณ์ต่อคำขอ
- การตอบสนองต่อธุรกรรมจะคงที่หรือเพิ่มขึ้นเมื่อเวลาผ่านไปหรือไม่
- ระบบทำงานอย่างไรภายใต้ภาระหนัก
- การตอบสนองและพฤติกรรมภายใต้ภาระหนัก
รายงานการทดสอบสำหรับการทดสอบความเสถียร
มีการรวบรวมและวัดสถิติต่างๆ ระหว่างการดำเนินการทดสอบ โดยตัวเลขเหล่านี้จะถูกวิเคราะห์เพื่อสร้างรายงานและระบุปัญหาประสิทธิภาพที่อาจเกิดขึ้น
ตัวอย่างสถิติที่รวบรวมภายใต้การทดสอบได้แก่:
- เวลาตอบสนองธุรกรรม: เวลาเฉลี่ยที่ใช้ในการทำธุรกรรมระหว่างการทดสอบ สถิตินี้จะประเมินว่าประสิทธิภาพของเซิร์ฟเวอร์อยู่ภายในระยะเวลาประสิทธิภาพการทำธุรกรรมขั้นต่ำและสูงสุดที่ยอมรับได้ที่กำหนดไว้สำหรับระบบหรือไม่ ข้อมูลนี้จะประเมินเวลาที่ใช้ในการประมวลผลคำขอโดยเว็บเซิร์ฟเวอร์และส่งไปยังเซิร์ฟเวอร์แอปพลิเคชันซึ่งใน กรณีส่วนใหญ่จะทำการร้องขอไปยังเซิร์ฟเวอร์ฐานข้อมูล
- จำนวนการเข้าชมต่อวินาที: จำนวนการเข้าชมที่เกิดขึ้นบนเซิร์ฟเวอร์โดยผู้ใช้ สถิติเหล่านี้มีประโยชน์ในการกำหนดจำนวนโหลดที่ผู้ใช้สร้างขึ้น เทียบกับจำนวนการเข้าชม
- ผ่าน: จำนวนทรูพุตบนเว็บเซิร์ฟเวอร์ระหว่างการทดสอบซึ่งวัดเป็นไบต์ ปริมาณงานหมายถึงจำนวนข้อมูลที่ผู้ใช้ได้รับจากเซิร์ฟเวอร์ในเวลาใดก็ตาม สถิตินี้ช่วยในการประเมินจำนวนโหลดที่ผู้ใช้สร้างขึ้น
- ธุรกรรมต่อวินาที: นี่คือจำนวนธุรกรรมที่เสร็จสมบูรณ์ทั้งหมด (ทั้งสำเร็จและล้มเหลว) ที่ดำเนินการระหว่างการทดสอบ สถิตินี้ช่วยในการตรวจสอบปริมาณธุรกรรมที่เกิดขึ้นจริงบนระบบ
- ซีพียู: เปอร์เซ็นต์การใช้งาน CPU ที่ใช้ระหว่างการทดสอบ
- หน่วยความจำ: การใช้หน่วยความจำระหว่างการทดสอบ
- ดิสก์: การใช้พื้นที่ดิสก์ที่ใช้ระหว่างการทดสอบ
พื้นฐานการทดสอบความเสถียร
การทดสอบความเสถียร อยู่ภายใต้การทดสอบประสิทธิภาพ ซึ่งเป็นเทคนิคที่ดำเนินการเพื่อตรวจสอบคุณลักษณะด้านคุณภาพบางอย่างของซอฟต์แวร์ เช่น ความเสถียร ความน่าเชื่อถือ และความพร้อมใช้งาน
การทดสอบนี้ใช้เพื่อกำหนดความเร็วของระบบหรือระบบย่อยที่ทำงานภายใต้เวิร์กโหลดเฉพาะ
การทดสอบประสิทธิภาพมีหลายประเภท และการทดสอบความเสถียรก็เป็นหนึ่งในนั้น
- การทดสอบความเครียด: เป็นแบบทดสอบที่จะตรวจสอบความทนทานของระบบที่เกินความสามารถของระบบ
- การทดสอบขัดขวาง: ใช้เพื่อตรวจสอบพฤติกรรมของระบบโดยการเพิ่มภาระของระบบทันที วัตถุประสงค์คือเพื่อตรวจสอบว่าระบบจะมีปัญหาด้านประสิทธิภาพ ณ จุดใดหรือจะผ่านไป
- การทดสอบความสามารถในการปรับขนาด: ใช้เพื่อตรวจสอบความสามารถของระบบ ว่าระบบจะมีประสิทธิภาพแค่ไหนในการรับมือกับความต้องการที่เพิ่มขึ้น การเปลี่ยนแปลงขนาด และการเปลี่ยนแปลงปริมาณ
- การทดสอบปริมาตร: เป็นเทคนิคการทดสอบที่ไม่สามารถใช้งานได้ซึ่งซอฟต์แวร์ที่อยู่ระหว่างการทดสอบจะต้องได้รับข้อมูลปริมาณมหาศาล และพฤติกรรมของระบบจะได้รับการตรวจสอบและตรวจสอบตามนั้น
- การทดสอบการรับน้ำหนักหรือความเสถียร: (ได้กล่าวไว้ข้างต้นแล้ว)
เครื่องมือทดสอบความเสถียร
เครื่องมือบางอย่างสำหรับการทดสอบประสิทธิภาพมีดังนี้ -
- เว็บโหลด
- โหลดรันเนอร์
- อาปาเช่ JMeter
- Neoโหลด
- คลาวด์เทส
- โหลดสตอร์ม
- โหลดUI
- สวพ
- โหลดผลกระทบ
- รถตัก
- Httperf
- เปิดSTA
สรุป
การทดสอบความเสถียรเป็นกระบวนการที่ไม่ทำงานในการทดสอบพฤติกรรมของแอปพลิเคชันโดยใช้โหลดสูงสุด ดำเนินการเพื่อค้นหาความสามารถในการปรับขนาดของระบบในสภาพแวดล้อมที่กำหนด