การทดสอบความเสถียรในการทดสอบซอฟต์แวร์

การทดสอบความเสถียร

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

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

การทดสอบความเสถียรเป็นการประเมินปัญหาความเสถียร การทดสอบนี้มีวัตถุประสงค์หลักเพื่อเน้นส่วนประกอบซอฟต์แวร์ให้มากที่สุด เป็นเทคนิคที่ไม่ใช่เชิงฟังก์ชัน

การทดสอบความเสถียร
การทดสอบความเสถียร

การทดสอบความเสถียรเรียกอีกอย่างว่าโหลดหรือ การทดสอบความอดทน.

ความเสี่ยงหากระบบที่อยู่ระหว่างการทดสอบไม่ผ่านการทดสอบความเสถียร

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

ข้อผิดพลาดที่อาจเกิดขึ้นได้

  • ระบบช้าลง
  • ระบบประสบปัญหาการทำงาน
  • ระบบจะแสดงพฤติกรรมแบบมีสาย
  • ระบบล่มไปเลย

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

ทำไมต้องทำการทดสอบความเสถียร

การทดสอบประเภทนี้จะช่วยให้ผู้ใช้เข้าใจถึงวิธีที่ระบบจะทำงานในสถานการณ์จริง

ดังนั้นการทดสอบความเสถียรทำให้คุณสามารถตรวจสอบ

  • ให้ความมั่นใจในความเสถียรของระบบของคุณภายใต้การทดสอบ
  • ตรวจสอบให้แน่ใจว่าระบบของคุณสามารถจัดการกับโปรแกรมขนาดใหญ่ได้
  • ตรวจสอบประสิทธิภาพของระบบของคุณ
  • ทดสอบความเสถียรของระบบภายใต้ความเครียด

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

ตัวอย่างเทคนิคการทดสอบความเสถียรที่พบบ่อยมากคือ

OnLine Sการกระโดด Portals: การทดสอบความเสถียรจะตรวจสอบว่าเว็บไซต์จะทำงานอย่างไรเมื่อ –

  • มีการป้อนข้อมูลจำนวนมากในช่วงเวลาเร่งด่วน
  • จำนวนการเข้าชมในช่วงเวลาหนึ่งๆ
  • ปัญหาการโหลดหน้าในเวลาเดียวกัน
  • พฤติกรรมของระบบ
  • การตอบสนองของระบบและอื่นๆ อีกมากมายตามมา การทดสอบความเสถียร

ตัวอย่างอื่น

A ซีพียู การทดสอบเป็นรูปแบบการทดสอบความเสถียรที่เป็นที่นิยมภายใต้ การทดสอบประสิทธิภาพ เทคนิค. การทดสอบนี้จะตรวจสอบความเสถียรของโปรเซสเซอร์และยังติดตามประสิทธิภาพเมื่อเวิร์คโหลดของโปรเซสเซอร์เพิ่มขึ้น

วิธีการทดสอบความเสถียร

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

กรณีทดสอบสำหรับการทดสอบความเสถียรของประสิทธิภาพของ CPU

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

รายงานการทดสอบสำหรับการทดสอบความเสถียร

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

ตัวอย่างสถิติที่รวบรวมภายใต้การทดสอบได้แก่:

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

พื้นฐานการทดสอบความเสถียร

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

การทดสอบนี้ใช้เพื่อกำหนดความเร็วของระบบหรือระบบย่อยที่ทำงานภายใต้เวิร์กโหลดเฉพาะ

การทดสอบประสิทธิภาพมีหลายประเภท และการทดสอบความเสถียรก็เป็นหนึ่งในนั้น

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

เครื่องมือทดสอบความเสถียร

เครื่องมือบางอย่างสำหรับการทดสอบประสิทธิภาพมีดังนี้ -

  • เว็บโหลด
  • โหลดรันเนอร์
  • อาปาเช่ JMeter
  • Neoโหลด
  • คลาวด์เทส
  • โหลดสตอร์ม
  • โหลดUI
  • สวพ
  • โหลดผลกระทบ
  • รถตัก
  • Httperf
  • เปิดSTA

สรุป

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