Viblo CTF
+3

Kiểm thử hiệu năng với JMeter

I. Giới thiệu về JMeter

1. JMeter là gì?

  • Apache JMeter là một phần mềm mã nguồn mở thuần Java, được ra đời bởi Stefano Mazzocchi - Kỹ sư phần mềm thuộc công ty Apache Software Foundation.
  • Được phát triển nhằm kiểm tra độ chịu tải (Load test) và Hiệu năng (Performance test).

2. Tính năng của Apache JMeter

  • JMeter được sử dụng để mô phỏng các hành vi của người dùng thực và kiểm tra hiệu năng của một máy chủ web. Thông qua đó, chúng ta có thể biết được hiệu suất của trang web khi có đồng thời 100, 100 hay 10000,... người dùng truy cập đồng thời.
  • Nhờ vào những ưu điểm dưới đây mà JMeter trở thành một công cụ mạnh mẽ trong lĩnh vực kiểm thử tự động về hiệu năng và độ chịu tải của trang web
  • Giấy phép nguồn mở: JMeter hoàn toàn miễn phí.
  • GUI thân thiện : JMeter cực kỳ dễ làm quen và sử dụng
  • Nền tảng độc lập: Có thể chạy trên nhiều nền tảng
  • Trực quan hóa kết quả kiểm tra: Kết quả kiểm tra được thể hiện ở nhiều định dạng khác nhau như biểu đồ, bảng, cây và tệp nhật ký.
  • Cài đặt dễ dàng
  • Mô phỏng: JMeter cót thể mô phỏng nhiều người dùng với các luồng đồng thời, tạo ra một tải nặng đối với trang web đang thử nghiệm.

3. Quá trình làm việc cơ bản

  • JMeter mô phỏng một nhóm người dùng, gửi yêu cầu đến máy chủ đích và trả về thông tin thống kê của máy chủ.

II. Thực hiện kế hoạch kiểm thử hiệu năng bằng JMeter

1. Cài đặt JMeter

  • Apache JMeter viết bằng Java nên muốn chạy JMeter trước hết bạn phải cài JRE hoặc JDK. (tại đây)
  • Truy cập link để cài đặt JMeter.
  • Giải nén file .zip vừa tải về và clicking chọn file .jar để chạy công cụ JMeter

2. Tạo một kế hoạch kiểm thử với JMeter

  • Khi thực hiện kiểm thử hiệu năng, chúng ta cần xác định được:
  • Normal load: Số người trung bình truy cập trang web của bạn
  • Heavy load: Số người dùng tối đa truy cập trang web của bạn
  • Mục đích của việc kiểm thử trang web của bạn là gì?
  • Thực hiện một kế hoạch kiểm thử hiệu năng với JMeter bao gồm các bước sau:

2.1 Thêm Thread Group

  • Khởi động JMeter.
  • Click Test Plan >> Add >> Threads (Users) >> Thread Group
  • Tại Thread Group, các thông tin cần quan tâm bao gồm:
    • Name: Tên thread
    • Number of Threads (users): Số người dùng truy cập vào trang web
    • Ram-up Period (in seconds): Thời gian thực hiện
    • Loop Count: Số lần lặp.
  • Thông số về Ram-up PeriodNumber of Threads (users) cho chúng ta biết được thời gian trì hoãn khi một người dùng tiếp theo sử dụng.
  • Với các thông số trên, chúng ta có thể thấy, với Number of Threads = 100, Ram-up = 10. Có nghĩa là trong vòng 1s sẽ có 10 request được gửi đến server.

2.2 Thêm JMeter Elements

  • HTTP Request Defaults : Click Thread group >> Add >> Config Element >> HTTP Request Defaults.
  • Tại bảng điều khiển HTTP Request Defaults, nhập URL của trang web cần test vào ô "Server name or IP".
  • HTTP Request: Click Thread group >> Add >> Sampler >> HTTP Request.
  • Trên cửa sổ HTTP Request, trường Path sẽ chỉ ra URL request nào bạn muốn gửi tới máy chủ, nếu để trống thì JMeter sẽ mặc định gửi đến URL đã được nhập vào tại HTTP Request Defaults.

2.3 Thêm Grap Result

  • Click Thread Group >> Add >> Listener >> Graph Results.
  • Ngoài Graph Results, JMeter còn hỗ trợ cho người dùng nhiều phương thức hiển thị kết quả như: View Results Tree, Summary Report, Aggregate Report, ...

Tài liệu tham khảo


All Rights Reserved

Viblo
Let's register a Viblo Account to get more interesting posts.