การทดสอบโหลดคืออะไร? (ตัวอย่าง)

⚡ สรุปอย่างชาญฉลาด

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

  • 👥 คำจำกัดความหลัก: การทดสอบที่ไม่เกี่ยวข้องกับการทำงานจริง ซึ่งจำลองภาระการใช้งานสูงสุดที่คาดการณ์ไว้ และวัดผลตอบสนอง
  • ⏱️ ตัวชี้วัดหลัก: เวลาในการตอบสนองจะต้องเป็นเชิงปริมาณ มีความเกี่ยวข้อง สมเหตุสมผล สามารถทำได้ และวัดผลได้
  • 🏗️ สิ่งที่ค้นพบ: ความจุสูงสุด ช่องว่างด้านโครงสร้างพื้นฐาน ข้อจำกัดของฐานข้อมูล และปัญหาในการกำหนดค่า
  • 📉 ภาระเทียบกับความเค้น: แรงกดจะหยุดที่จุดสูงสุดที่คาดไว้ จากนั้นจึงค่อยๆ เพิ่มแรงกดให้เกินจุดนั้นไปเพื่อหาจุดแตกหัก
  • 🛠️ ตัวเลือกเครื่องมือ: JMeterGatling และ k6 เป็นซอฟต์แวร์โอเพนซอร์ส ส่วน LoadRunner เป็นซอฟต์แวร์เชิงพาณิชย์ที่เป็นที่ยอมรับ
  • 📋 วิชาบังคับก่อน: ควรเรียกใช้โปรแกรมก็ต่อเมื่อแอปพลิเคชันทำงานได้อย่างเสถียรแล้วเท่านั้น มิเช่นนั้นข้อบกพร่องจะบดบังผลลัพธ์ด้านประสิทธิภาพ

การทดสอบโหลดคืออะไร

การทดสอบโหลดคืออะไร?

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

การทดสอบนี้มักจะระบุ –

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

เป็นการทดสอบแบบไม่ใช้งานประเภทหนึ่ง ในสาขาวิศวกรรมซอฟต์แวร์ การทดสอบโหลดมักใช้กับไคลเอนต์/เซิร์ฟเวอร์ แอปพลิเคชันบนเว็บ ทั้งอินทราเน็ตและอินเทอร์เน็ต

โหลดการทดสอบ

เหตุใดจึงจำเป็นต้องมีการทดสอบโหลด?

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

ตัวอย่างการทดสอบโหลด

  • Toysrus.com ไม่สามารถรับมือกับปริมาณการเข้าชมที่เกิดจากแคมเปญโฆษณาของตนเองได้ ส่งผลให้สูญเสียทั้งงบประมาณด้านการตลาดและยอดขายที่ตั้งเป้าไว้
  • เว็บไซต์ของสายการบินไม่สามารถรองรับผู้ใช้มากกว่า 10000 รายในช่วงข้อเสนอเทศกาล
  • สารานุกรมบริแทนนิกาประกาศให้เข้าถึงฐานข้อมูลออนไลน์ได้ฟรีเป็นข้อเสนอส่งเสริมการขาย แต่ไม่สามารถรับมือกับปริมาณข้อมูลมหาศาลที่หลั่งไหลเข้ามาได้เป็นเวลาหลายสัปดาห์

เว็บไซต์จำนวนมากประสบปัญหาเวลาโหลดล่าช้าเมื่อพบปริมาณการเข้าชมสูง ข้อเท็จจริงบางประการ –

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

ทำไมต้องโหลดการทดสอบ?

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

เป้าหมายของการทดสอบโหลด

การทดสอบการโหลดจะระบุปัญหาต่อไปนี้ก่อนที่จะย้ายแอปพลิเคชันสู่ตลาดหรือการผลิต:

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

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

ข้อกำหนดเบื้องต้นของการทดสอบการรับน้ำหนัก

ตัวชี้วัดหลักสำหรับการทดสอบโหลดคือเวลาตอบสนอง ก่อนที่คุณจะเริ่มการทดสอบโหลด คุณต้องพิจารณา –

  • มีการวัดและเปรียบเทียบเวลาตอบสนองแล้วหรือไม่ - เชิงปริมาณ
  • ไม่ว่าเวลาตอบสนองจะนำไปใช้กับกระบวนการทางธุรกิจหรือไม่ – เกี่ยวข้อง
  • เวลาตอบสนองสมเหตุสมผลหรือไม่ - สมจริง
  • ไม่ว่าเวลาตอบสนองจะสามารถทำได้หรือไม่ก็ตาม
  • ไม่ว่าเวลาตอบสนองจะวัดได้โดยใช้เครื่องมือหรือนาฬิกาจับเวลา – วัดได้

การตั้งค่าสภาพแวดล้อมก่อนการทดสอบโหลด

แพลตฟอร์มฮาร์ดแวร์ การกำหนดค่าซอฟต์แวร์
  • เครื่องเซิร์ฟเวอร์
  • โปรเซสเซอร์
  • หน่วยความจำ
  • ที่จัดเก็บข้อมูลบนดิสก์
  • การกำหนดค่าเครื่องโหลด
  • การกำหนดค่าเครือข่าย
  • Operaระบบ ting
  • ซอฟต์แวร์เซิร์ฟเวอร์

กลยุทธ์การทดสอบโหลด

มีวิธีการทดสอบโหลดอยู่หลายวิธี ต่อไปนี้คือกลยุทธ์การทดสอบโหลดบางประการ

กลยุทธ์การทดสอบโหลด

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

วิธีทำการทดสอบโหลด

กระบวนการทดสอบโหลดสามารถอธิบายสั้น ๆ ได้ดังนี้ -

  1. สร้างถวาย สภาพแวดล้อมการทดสอบ สำหรับการทดสอบโหลด
  2. กำหนดสถานการณ์การทดสอบโหลด
  3. กำหนดธุรกรรมการทดสอบโหลดสำหรับแอปพลิเคชัน
    • เตรียมข้อมูลสำหรับแต่ละธุรกรรม
    • จำเป็นต้องคาดการณ์จำนวนผู้ใช้ที่เข้าถึงระบบ
    • กำหนดความเร็วการเชื่อมต่อ ผู้ใช้บางรายอาจเชื่อมต่อผ่านสายเช่าในขณะที่บางรายอาจใช้การเรียกผ่านสายโทรศัพท์
    • กำหนดเบราว์เซอร์และระบบปฏิบัติการที่แตกต่างกันที่ผู้ใช้ใช้ 
    • การกำหนดค่าเซิร์ฟเวอร์ทั้งหมด เช่น เว็บ แอปพลิเคชัน และเซิร์ฟเวอร์ DB
  4. ทดสอบการดำเนินการและการตรวจสอบสถานการณ์ รวบรวมตัวชี้วัดต่างๆ
  5. วิเคราะห์ผลลัพธ์ ให้คำแนะนำ
  6. ปรับแต่งระบบอย่างละเอียด
  7. ทดสอบอีกครั้ง

แนวทางการทดสอบการรับน้ำหนัก

แนวทางการทดสอบโหลด

  1. ควรวางแผนการทดสอบโหลดเมื่อแอปพลิเคชันมีเสถียรภาพในการใช้งาน
  2. ข้อมูลที่ไม่ซ้ำกันจำนวนมากควรพร้อมอยู่ในกลุ่มข้อมูล
  3. ควรตัดสินใจจำนวนผู้ใช้สำหรับแต่ละสถานการณ์หรือสคริปต์
  4. หลีกเลี่ยงการสร้างบันทึกโดยละเอียดเพื่อประหยัดพื้นที่ดิสก์ IO
  5. พยายามหลีกเลี่ยงการดาวน์โหลดรูปภาพในเว็บไซต์
  6. ในกระบวนการดำเนินการกรณีทดสอบการทดสอบโหลด ควรบันทึกความสอดคล้องของเวลาตอบสนองตลอดช่วงเวลาที่ผ่านไป และควรเปรียบเทียบเวลาเดียวกันนี้กับการทดสอบการทำงานต่างๆ

ความแตกต่างระหว่างการทดสอบโหลดและความเครียด

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

ความแตกต่างระหว่างการทดสอบการทำงานและการทดสอบโหลด

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

โหลดเครื่องมือทดสอบ

โหลดรันเนอร์

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

อ่านเพิ่มเติมใน บทช่วยสอนการใช้งาน LoadRunner.

Apache JMeter

โอเพ่นซอร์ส Java เป็นเครื่องมือและเป็นตัวเลือกฟรีที่ใช้กันอย่างแพร่หลายที่สุด รองรับ HTTP, JDBC, JMS, FTP และอื่นๆ จัดเก็บแผนการทดสอบในรูปแบบ XML และผสานรวมเข้ากับไปป์ไลน์ CI ดูรายละเอียดเพิ่มเติมได้ที่ JMeter เกี่ยวกับการสอน สำหรับคำแนะนำทีละขั้นตอน

Gatling

เครื่องมือโอเพนซอร์สที่มีการเขียนโค้ดทดสอบด้วยภาษา Scala หรือ Javaโปรแกรมนี้รองรับการทำงานพร้อมกันจำนวนมากบนฮาร์ดแวร์ระดับกลาง และสร้างรายงาน HTML ที่ละเอียด ซึ่งเหมาะสำหรับทีมที่ต้องการสคริปต์ทดสอบที่มีการควบคุมเวอร์ชัน

k6

เครื่องมือโอเพนซอร์สที่มีการเขียนโค้ดทดสอบไว้แล้ว Javaสคริปต์นี้ออกแบบมาสำหรับการทดสอบประสิทธิภาพโดยนักพัฒนาภายในไปป์ไลน์ CI แทนที่จะเป็นกิจกรรม QA แยกต่างหาก

การเลือกเครื่องมือ

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

ข้อดีและข้อเสียของการทดสอบการรับน้ำหนัก

ต่อไปนี้เป็นข้อดีของการทดสอบโหลด:

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

ข้อเสียของการทดสอบโหลด:

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

ตัวชี้วัดสำคัญที่ควรบันทึกระหว่างการทดสอบโหลด

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

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

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

อย่ารายงานค่าเฉลี่ยเพียงอย่างเดียว ค่าเฉลี่ย 900 มิลลิวินาที โดยมีค่าเปอร์เซ็นไทล์ที่ 95 อยู่ที่ 1.1 วินาที แสดงถึงระบบที่มีความสม่ำเสมอ แต่หากค่าเฉลี่ยเดียวกันนี้มีค่าเปอร์เซ็นไทล์ที่ 95 อยู่ที่ 11 วินาที หมายความว่าผู้ใช้หนึ่งในยี่สิบคนกำลังประสบกับประสบการณ์ที่ไม่เป็นที่ยอมรับ ซึ่งค่าเฉลี่ยดังกล่าวได้ปกปิดไว้

การทดสอบนี้แตกต่างจากการทดสอบประสิทธิภาพอื่นๆ อย่างไร

การทดสอบประสิทธิภาพเป็นกลุ่มของการทดสอบที่แตกต่างกันในรูปแบบของแรงที่ใช้ ซึ่งเป็นเหตุผลที่ทำให้การทดสอบเหล่านี้มักสับสนกันได้ง่าย

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

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

คำถามที่พบบ่อย

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

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

JMeterเนื่องจากใช้งานได้ฟรี รองรับโปรโตคอลหลากหลายที่สุด และมีเอกสารประกอบมากที่สุด หากทีมต้องการให้การทดสอบเขียนเป็นโค้ดที่มีการควบคุมเวอร์ชัน ให้เปลี่ยนไปใช้ Gatling หรือ k6 แทน

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

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

สรุปโพสต์นี้ด้วย: