apache-jmeter-api

JMeter Series – Hướng Dẫn Sử Dụng JMeter Test API Performance

Hits: 2737

5/5 - (4 bình chọn)

Tiếp theo trong Jmeter Series mình sẽ hướng dẫn cho các bạn cách tạo test plan JMeter test API performance.

API là viết tắt của Application Programming Interface (giao diện lập trình ứng dụng). API được xem là cầu nối cho phép trao đổi dữ liệu giữa các ứng dụng với nhau.

Việc test performace API là rất cần thiết trước khi release sản phẩm. Kết quả test sẽ cho biết server đáp ứng được bao nhiêu lượt truy cập cùng một lúc trong khoảng thời gian ngắn mà không để xảy ra tình trạng lỗi, dữ liệu vẫn hiển thị tốt trên thiết bị của người dùng.

Việc tạo plan JMeter test API performance từng bước tương tự như với Website.

Test plan cần thực hiện

Thực hiện tạo plan test performance API: https://jsonplaceholder.typicode.com/users
Số lượng truy cập: 100 users
Thời gian: 10s
Số lần lặp: 2
Test Report: Summary report, Table report, Tree report

HighlandCoffee-Uudai

Các bước tạo test plan JMeter test API performance

1. Add Thread Group

Click phải vào Test Plan > Chọn Add > Chọn Threads (Users) > Chọn Thread Group

JMeter add thread group
Add Thread Group

2. Add HTTP Request

Click phải vào Thread Group > Chọn Add > Chọn Sampler > Chọn HTTP Request

JMeter add HTTP Request
Add HTTP Request

3. Config HTTP Request

Để thực hiện lấy API https://jsonplaceholder.typicode.com/users cần config thông tin như sau:

  • Protocol: https
  • Server Name or IP: jsonplaceholder.typicode.com
  • Method: GET
  • Path: /users
jmeter_api_http_request
Config HTTP Request

4. Config Thread Group

Thiết lập Thread Properties:

  • Number of Threads (users): Số lượng users giả lập được gửi vào trang web
  • Ramp-Up Period (in seconds): Thời gian gửi lượng users vào trang web
  • Loop Count: Số lần lặp
  • Forever: Check để lặp không giới hạn, uncheck để lặp bằng số Loop Count

Trong hình này mình đã thiết lập gửi 100 users vào trang trong vòng 10 giây, số lần lặp là 2
=> Tương đương gửi 200 users vào trang trong vòng 20 giây, mỗi giây sẽ gửi vào 10 users.

jmeter_api_config_thread
Config Thread Group

5. Add Listener

Thêm report thống kê để theo dõi kết quả test.
Click phải vào Thread Group > Chọn Add > Chọn Listener > Chọn Summary Report / View Results in Table / View Results Tree.

jmeter_api_add_listener
Adđ Listener

6. Start Test

Nhấn vào icon start / start no pause để bắt đầu chạy test

jmeter-start
jmeter-start-no-pause
jmeter_api_start_test
Start test

7. Test Report

Sau khi start test thì bạn đã có thể xem được kết quả test đang chạy cho đến khi kết thúc.

jmeter_api_summary_report
Summary Report
jmeter_api_table_report
View Results in Table
jmeter_api_tree_report
View Results Tree

Giải thích các thông số:

#Samples: Tổng số lần run của request. #Samples = Number of Threads (users) * Loop Count
Average: Thời gian phản hồi trung bình (Response Time) của request, tính cho đến lần gửi cuối cùng
Min: Respone Time thấp nhất của request đã gửi
Max: Respone Time cao nhất của request đã gửi
Std Dev.: Độ lệch chuẩn đo lường sự thay đổi của 1 tập hợp data, dựa trên thống kê.
Error %: % số lượng request bị lỗi
Throughput: Throughput = (Tổng số lượng requests) / (Tổng thời gian) * (Đơn vị chuyển đổi). Lượng requests được hệ thống (server) xử lý trong 1 đơn vị thời gian, có thể là giây, phút, hoặc giờ.
Received KB/sec: Dung lượng nhận được từ server
Sent KB/sec: Dung lượng gửi lên server
Avg. Bytes: Dung lượng trung bình của 1 lần response tính bằng bytes

8. Save Report

Sau khi chạy test plan xong bạn có thể lưu lại kết quả test về file .csv
Tại Summary Report nhấn vào Save Table Data > Nhập File Name > Nhấn Save

jmeter_api_save_report
Save report

File .csv được lưu hiển thị như sau

jmeter_api_csv_report
Csv report

Lời Kết

Như vậy qua bài viết trên bạn đã có thể tự tạo một test plan hoàn chỉnh về JMeter test API performance sử dụng phương thức GET.
Hẹn gặp lại các bạn trong bài viết tiếp theo với nội dung hướng dẫn sử dụng JMeter để test performance form Login (API sử dụng phương thức POST).

HighlandCoffee-Uudai

Leave a Comment

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

RSS
Follow by Email
Pinterest
LinkedIn
Share
Instagram
Scroll to Top