Nội dung bài học
Như ở bài trước chúng ta đã đi tìm hiểu cách cài đặt JMeter. Hôm nay mình sẽ đi giới thiệu về các thành phần cơ bản trong JMeter. Các thành phần tìm hiểu trong bài viết hôm nay là:
- Thread Group
- Sampler
- Listener
- Configuration
1. Thread Group
Thread group là đại diện cho một nhóm người dùng và chứa các Thread khác. Mỗi Thread Group sẽ mô phỏng những người dùng để thực hiện một trường hợp thử nghiệm cụ thể. Một số thông số cần chú ý trong Thread Group:
– Number of Threads: Mỗi Thread đại diện cho một người dùng ảo, JMeter cho phép thay đổi số lượng người dùng không hạn chế để thực hiện các thử nghiệm.
– Ram-Up Period: Thời gian để bắt đầu tất cả các Thread.
– Loop Count: Số lần lặp lại những yêu cầu của người dùng.
Cách tạo Thread Group: Click chuột phải vào Test plan -> Add -> Threads (Users) -> Thread Group
2. Sampler
Samplers sẽ chỉ thị JMeter gửi request đến server và chờ đợi phản hồi. Để connect tới server, users cần tạo những request.
Cách tạo Sampler: Click chuột phải vào Thread Group -> Add -> Sampler -> chọn bất kỳ Sampler bạn muốn.
Sampler bao gồm:
- FTP Request
- HTTP Request (can be used for SOAP or REST Webservice also)
- JDBC Request
- Java object request
- JMS request
- JUnit Test request
- LDAP Request
- Mail request
- OS Process request
- TCP request
Ví dụ khi sử dụng HTTP Request: Bạn muốn 100 người dùng sẽ tấn công https://www.google.com đồng thời. Cách tạo: Thread Group -> Sampler -> HTTP Request.
3. Listeners
Sau khi tạo và gửi yêu cầu tới server, JMeter sẽ nhận kết quả trả về và hiển thị. Listeners cho phép xem các kết quả thu được từ việc chạy dưới dạng các loại khác nhau, như: bảng biểu, đồ thị, cây... Listeners sẽ cung cấp một cách trực quan những dữ liệu thu được. Chúng ta cùng tìm hiểu một số dạng phổ biến như sau:
– View Results Tree: Cho phép theo dõi thông tin của dữ liệu mà server trả về cho mỗi người dùng dưới các dạng khác nhau.
– Graph Results: Trả về đồ thị biểu diễn những thông số về: số lượng yêu cầu, lượng yêu cầu được xử lý mỗi phút, giá trị trung bình, giá trị trung vị của toàn bộ thời gian phản hồi từ server.
– Summary Report: Cung cấp báo cáo về các giá trị: thời gian phản hồi thấp nhất/cao nhất, số yêu cầu xảy ra lỗi, lưu lượng trung bình.
Cách tạo: Click chuột phải Thread group -> Add -> Listener -> Chọn dạng kết quả
4. Configuration
Configuration dùng để thiết lập các giá trị mặc định và các biến để sử dụng sau này bởi các samplers. Hình dưới đây cho thấy một số configuration elements thường được dùng trong JMeter:
CSV Data Set Config
Trường hợp bạn muốn muốn kiểm thử đồng thời 100 người dùng đăng nhập bằng thông tin đăng nhập khác nhau. Khi đó bạn không cần ghi lại kịch bản 100 lần. Bạn có thể lưu trữ thông tin đăng nhập (tên người dùng, mật khẩu) vào một file text. Sử dụng "CSV Data Set Config " để đọc các tham số từ file.
HTTP Cookie Manager
Bạn đã bao giờ vào một trang web, ví dụ: https://shopee.vn, đăng nhập bằng người dùng và mật khẩu của bạn. Sau đó bạn tắt đi và mở lại thì thấy không cần đăng nhập nữa. Có khi nào bạn thắc mắc: Tại sao mình không phải đăng nhập nữa không? Lí do là trình duyệt của bạn sẽ sử dụng cookie làm dữ liệu người dùng để đăng nhập. JMeter cung cấp trình quản lý HTTP Cookie Manager cũng có tính năng tương tự như trình duyệt web. Nếu bạn có yêu cầu HTTP Request có chứa cookie, Cookie Manager sẽ tự động lưu trữ cookie đó và sẽ sử dụng nó cho tất cả các yêu cầu trong tương lai tới trang web cụ thể đó. Đây là màn hình HTTP Cookie Manager:
HTTP request default
HTTP request default cho phép bạn đặt các giá trị mặc định mà bộ điều khiển HTTP Request của bạn sử dụng. Ví dụ: Bạn đang gửi 100 yêu cầu HTTP đến máy chủ google.com. Bạn sẽ phải nhập thủ công tên máy chủ = google.com cho tất cả 100 yêu cầu này. Thay vào đó, bạn có thể thêm một HTTP request defaults với trường "Tên máy chủ hoặc IP" = google.com. Không cần gõ 100 lần!
Login Config Element
Login Config Element cho phép bạn thêm hoặc ghi đè cài đặt tên người dùng và mật khẩu. Ví dụ: bạn muốn mô phỏng một người dùng đăng nhập vào trang web www.facebook.com bằng người dùng và mật khẩu. Bạn có thể sử dụng Login Config Element để thêm cài đặt mật khẩu và người dùng này trong yêu cầu người dùng. Ở đây bạ sẽ thấy JMeter sẽ cung cấp Username và password để bạn điền
So sánh giữa Login Config Element và CSV data Config
Login Config Element | CSV data Config |
---|---|
Mô phỏng đăng nhập một người dùng | Mô phỏng đăng nhập nhiều người dùng |
Chỉ thích hợp cho tham số đăng nhập (người dùng và mật khẩu) | Thích hợp cho số lượng lớn các tham số |
Trên đây là một số thành phần cần chú ý và thường sử dụng trong JMeter, mong nó sẽ giúp bạn trong việc tìm hiểu JMeter.
Tài liệu tham khảo:
Anh Tester
facebook.com/anhtester
Đường dẫu khó chân vẫn cần bước đi
Đời dẫu khổ tâm vẫn cần nghĩ thấu