JMeter phần 3 – Load Testing với Database bằng Apache JMeter

Load Testing với Database bằng Apache JMeter.

Ở bài trước mình đã hướng dẫn load testing đơn giản với 1 trang web.

Ở bài chúng ta tiếp tục thực hiện load testing với database.

– Mình sẽ thực hiện trên hệ quản trị cơ sở dữ liệu MySQL (nếu bạn chưa cài đặt MySQL thì có thể xem hướng dẫn tại đây: https://stackjava.com/install/mysql-la-gi-cai-dat-mysql-mysql-workbench-tren-window.html)

Đầu tiên mình sẽ tạo 1 database ‘demo-jmeter’ để test:

Load Testing với Database bằng Apache JMeter

Tạo bảng user_info với các thông tin như bên dưới.

Phần id mình sẽ chọn là AI (tự động tăng)

 

Cấu hình Apache JMeter để connect tới MySQL

Ở đây kết nối tới MySQL nên bạn cần copy thư viện mysql jdbc vào folder lib của Apache JMeter:

(Bạn có thể download thư viện tại đây)

Tạo test plan trên Apache JMeter

Tạo cấu hình kết nối tới MySQL

Nhập variable name (bắt buộc): ở đây mình để là name1

Nhập URL kết nối tới database cần test: jdbc:mysql://localhost:3306/demo-jmeter

Chọn JDBC driver class là: com.jdbc.Drive.class (chọn tùy theo loại hệ quản trị cơ sở dữ liệu bạn dùng)

Nhập username và password của MySQL (ở đây của mình là root/admin1234)

Tạo request tới MySQL (tương tự như HTTP Request đã dùng ở bài trước)

Nhập variable Name (bắt buộc và phải giống với variable Name ở JDBC connection configuration bên trên)

Nhập câu SQL cần truy vấn tới database.

Lưu ý: chọn query type đúng phải kiểu câu lệnh SQL, ở đây câu lệnh của mình là INSERT nên mình để query type là Update Statement

Thêm listener hiển thị kết quả:

Nếu bạn chưa lưu test plan thì nó sẽ yêu cầu lúc bạn chạy (có thể chạy mà không cần lưu cũng được), ở đây mình lưu lại với tên là demo-jmeter để lần sau dùng lại.

Kết quả:

Ví dụ với câu lệnh SELECT (Query Type = Select Statement)

Kết quả:

 

 

Okay Done!

Phần tiếp theo mình sẽ hướng dẫn load test cho các tình huống phức tạp hơn như login, thực hiện load test cho 1 loạt các hành động liên tiếp (ví dụ: truy cập -> đăng nhập -> đăng xuất)…

References:

http://jmeter.apache.org/usermanual/build-db-test-plan.html

stackjava.com