Hits: 905
Bài viết hôm nay mình sẽ hướng dẫn cho các bạn cách sử dụng JMeter tạo test plan truy cập vào database và thực hiện câu lệnh query.
Dữ liệu test trong bài được tạo từ trang db4free.net miễn phí database. Bạn nào có hosting có thể tạo database riêng để test cho ổn định hơn nhé.
Test plan cần thực hiện
- Thực hiện tạo test plan truy cập vào database sau và thực hiện query:
https://www.db4free.net/phpMyAdmin - Thông tin database:
Host: db4free.net, Port: 3306
DBname: {yourdbname}
Username: {yourusername}
Password: {yourpassword} - SQL query:
Lấy tất cả thông tin từ bảng Person
Lấy thông tin Person có No = 2 - Số lượng request: 5
- Thời gian: 1s
- Report: Summary report, Tree report
Tạo Database và Table
Mình sẽ sử dụng trang db4free.net để tạo 1 database miễn phí. Vì là miễn phí nên có load hơi chậm nên bạn kiên nhẫn chút nhé =))
1) Đầu tiên vào trang https://www.db4free.net/signup.php và đăng ký các thông tin sau:
MySQL database name
MySQL username
MySQL user password
MySQL user password verification
Email address
(Hoặc bạn có thể sử dụng database mình đã tạo sẵn:
MySQL database name: docgihocgi
MySQL username: docgihocgi
MySQL user password: 12345678)

2) Vào email xác nhận đăng ký.

3) Login tại https://www.db4free.net/phpMyAdmin và tạo table Person có dữ liệu như sau
No | Name | Age | Address |
1 | Huy | 22 | Phan Dang Luu, Phu Nhuan, Ho Chi Minh |
2 | Mai | 23 | Phan Huy Ich, Go Vap, Ho Chi Minh |
3 | Nhi | 24 | Phan Van Tri, Tan Binh, Ho Chi Minh |

Các bước tạo test plan sử dụng JMeter test database
1. Add, Config Thread Group
Click phải vào Test Plan > Chọn Add > Chọn Threads (Users) > Chọn 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

2. Add, Config JDBC Request
Click phải vào Thread Group > Chọn Add > Chọn Sampler > Chọn JDBC Request
Tạo 2 JDBC Request đặt tên là All person và Person No = 2

Thêm câu truy vấn dữ liệu tại Query:
select * from Person;
select * from Person where No = 2;
Variable Name of Pool declared in JDBC Connection Configuration: test


3. Add, Config JDBC Connection Configuration
Click phải vào Thread Group > Chọn Add > Chọn Config Element > Chọn JDBC Connection Configuration

Config JDBC Connection Configuration theo như thông tin dưới đây:
- Variable Name for created pool: test
- Validation Query: chọn Select 1
- Database URL: jdbc:mysql://db4free.net:3306/docgihocgi
(trong đó 3306 là port, docgihocgi là tên database) - JDBC Driver class: chọn com.mysql.jdbc.Driver
- Username: docgihocgi
- Password: 12345678

4. 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 Tree

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



6. 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.



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 |
7. 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

Lời Kết
Như vậy qua bài viết trên bạn đã có thể tạo test plan hoàn chỉnh để test performance truy vấn dữ liệu từ database.
Hẹn gặp lại các bạn trong những bài viết tiếp theo trong JMeter Series nhé.