การทำ Load Testing ด้วย locust.io เป็นกระบวนการที่ช่วยในการทดสอบประสิทธิภาพและความทนทานของระบบโดยการสร้างการตั้งค่าและจำลองผู้ใช้แบบพร้อมกันหลายคน
เริ่มต้นด้วยการติดตั้ง locust.io โดยใช้คำสั่งต่อไปนี้ในเทอร์มินัล:
pip install locust
เมื่อติดตั้งเสร็จสมบูรณ์ คุณสามารถสร้างไฟล์สคริปต์ของการทดสอบด้วย locust.io ได้โดยใช้ภาษา Python
ตัวอย่างการสร้างไฟล์สคริปต์ Load Testing ด้วย locust.io:
from locust import HttpUser, task, between
data = {
"username": "username",
"password": "password"
}
class WebsiteTestUser(HttpUser):
wait_time = between(0.5, 3.0)
def on_start(self):
response = self.client.post(
"/v1/signin", json=data).json()
self.header = {"authorization": response["access_token"]}
@task(1)
def testapi01(self):
self.client.get(
"/v1/dashboard", headers=self.header)
@task(2)
def testapi02(self):
self.client.get(
"/v1/event", headers=self.header)
@task(3)
def testapi03(self):
self.client.get(
"/v1/test?search=&page=1&pageSize=100", headers=self.header)
ในตัวอย่างนี้ เราสร้าง Class ชื่อ MyUser ที่สืบทอดจาก HttpUser ซึ่งเป็น Base class ของ locust.io และกำหนดเวลาหน่วงระหว่างการส่งคำขอระหว่าง 1-2 วินาที ในเมท็อด เรียกใช้ endpoint ที่ต้องการทดสอบผ่าน self.client.get()
เมื่อคุณได้กำหนดสคริปต์การทดสอบเสร็จสิ้น ให้บันทึกไฟล์และปิดตัวอย่างการทดสอบ
คุณสามารถเริ่มต้นการทดสอบด้วย locust.io ได้โดยใช้คำสั่งต่อไปนี้ในเทอร์มินัล:
locust -f mylocustfile.py
โดยในตัวอย่างเราใช้ชื่อไฟล์ mylocustfile.py สามารถตั้งชื่อไฟล์ตามที่คุณต้องการได้
หลังจากนั้น ให้เปิดเบราว์เซอร์และไปที่ http://localhost:8089 เพื่อเข้าสู่หน้าตรวจสอบผลลัพธ์และสถิติการทดสอบของ locust.io
การทำ Load Testing ด้วย locust.io เป็นเครื่องมือที่มีประสิทธิภาพและความยืดหยุ่นในการทดสอบและปรับปรุงระบบของคุณ แต่ควรระวังในการใช้งานร่วมกับระบบที่มีความสำคัญและต้องการการทดสอบอย่างรอบคอบ ควรใช้ locust.io ในการทดสอบบนระบบเฉพาะเพื่อป้องกันความเสียหายที่อาจเกิดขึ้น