Hits: 2801
Tại bài viết JMeter Series – Hướng Dẫn Sử Dụng JMeter Test Login Form mình đã hướng dẫn cách test login form có thành công hay không bằng việc thêm Parameters username và password. Tuy nhiên nếu chúng ta muốn test login với nhiều user cùng lúc thì sẽ thực hiện như thế nào?
Bài viết hôm nay mình sẽ hướng dẫn cách đọc dữ liệu từ file csv (dữ liệu này có thể được export từ database) để thực hiện test login form liệu có thành công.
NỘI DUNG CHÍNH
Test plan cần thực hiện
- Thực hiện tạo test plan đọc dữ liệu từ file userList.csv test login form tại trang: https://practice.expandtesting.com/login
- Số lượng users: 3
- Thời gian: 1s
- Report: Summary report, Tree report, Table report
- File csv userList có data 2 cột username, password như sau:
practice,111111
practice,SuperSecretPassword!
practice,222222 - Kiểm tra việc đăng nhập có thành công hay không với response text: “You logged into a secure area!”
Các bước tạo test plan đọc dữ liệu từ file csv
1. Add Thread Group
Click phải vào Test Plan > Chọn Add > Chọn Threads (Users) > Chọn Thread Group

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

3. Config HTTP Request
Để thực hiện login tại trang https://practice.expandtesting.com/login cần config thông tin như sau:
- Protocol: http
- Server Name or IP: practice.expandtesting.com
- Method: POST
- Path: authenticate
- Nhấn Add để thêm Parameters:
1) Name: “username”, Value: “${username}”
2) Name: “password”, Value: “${password}”
Name là “username” và “password” được lấy từ input name trên trang web nhé.
Value điền tên biến ${username} và ${password}


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

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.

6. Add Response Assertion
Để biết rằng sau khi login thành công trang web có trả về kết quả mong muốn hay không ta thêm vào một Response Assertion.
Thêm Response Assertion: Click phải vào HTTP Request > Chọn Add > Chọn Response Assertion
Chọn Field to Test: Text Response
Thêm text cần kiểm tra sau khi login thành công: Chọn Add > Thêm text Hello docgihocgi



7. Add CSV Data Set Config
Trước tiên ta tạo file userList.csv chứa dữ liệu cần import bao gồm 2 cột username và password

Sau đó thêm vào CSV Data Set Config để đọc dữ liệu từ file đã tạo:
Click phải vào Thread Group > Chọn Add > Chọn Config Element > Chọn CSV Data Set Config

Thiết lập các thông tin sau:
- Filename: D:/Docgihocgi.com/JMeter/userList.csv
(Chọn file userList.csv đã được tạo) - Variable Names: username, password
(username và password là 2 biến ${username}, ${password} cần truyền vào tại bước 3. Add HTTP Request ) - Delimiter: dấu , (hoặc dấu 😉
(Dấu phân cách giữa 2 cột username và password trong file csv)


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



9. 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 |
Kết quả trả về request 2 thành công do thông tin username, password tại row 2 trong file csv có thể login được.
Request 1 và 3 tương ứng với row 1,3 trong csv bị lỗi do thông tin đăng nhập không đúng.
Chọn HTML và tab Response data để xem kết quả


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

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

Lời Kết
Như vậy qua bài viết trên bạn đã có thể tạo test plan để đọc dữ liệu từ file csv sử dụng vào test performance login form rồi đấy.
Tuy nhiên đây chỉ là ví dụ cơ bản khi test login với 2 biến username và password. Tùy từng yêu cầu của dự án nên bạn cần sử dụng biến và kiểm tra dữ liệu được đọc vào cho phù hợp.
Hẹn gặp lại các bạn trong những bài viết tiếp theo trong JMeter Series nhé.
cảm ơn ad docgihocgi.com, nội dung hay nè
Em làm giống như trên ad chỉ, file csv của em có 3 tài khoản cũng 2 tài khoản sai pass hoặc user nhưng không báo lỗi như ad ạ, thêm trjang thái succcessfull Login thì chạy cái này bị sai còn 3 tài khoản login vẫn chạy đúng ạ