apache-jmeter-read-csv

JMeter Series – Hướng Dẫn Đọc Dữ Liệu Từ File Csv Để Test Login Form

Hits: 1960

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

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.

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: http://thedemosite.co.uk/login.php
  • 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:
    user1,111111
    fdgghgfhgf,dfgdfg
    user2,222222
  • Kiểm tra việc đăng nhập có thành công hay không với response text: “Successful Login”

HighlandCoffee-Uudai

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

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 login tại trang http://thedemosite.co.uk/login.php cần config thông tin như sau:

  • Protocol: http
  • Server Name or IP: thedemosite.co.uk
  • Method: POST
  • Path: /login.php
  • 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}
jmeter-read-csv-config-http-request
Config HTTP Request
Parameters Name
Parameters Name

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
jmeter-read-csv-config-thread-group
Add 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-test-login-report
Adđ Listener

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 Successful Login

jmeter-read-csv-response-assertion
Add Response Assertion
jmeter-read-csv-config-response-assertion
Config Response Assertion
jmeter-test-login-response-assertion
Message trả về sau khi login thành công

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

userList
tạo userList.csv

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

jmeter-add-csv-data-set-config
Add 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: , (hoặc 😉
    (Dấu phân cách giữa 2 cột username và password, nếu dùng dấu phẩy thì nằm trên 1 cột và chấm phẩy thì nằm trên 2 cột trong file csv)
jmeter đọc dữ liệu từ file Csv
CSV Data Set Config

8. Start Test

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

jmeter-start
jmeter-start-no-pause
jmeter-read-csv-start-test
Start 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.

jmeter-read-csv-summary-report
Summary Report
jmeter-read-csv-view-result-tree
View Results Tree
view-results-in-table
View Results in Table

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ả

jmeter-read-csv-success
Successful Login
jmeter-read-csv-fail
Failed Login

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

jmeter-read-csv-save-report
Save report

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

jmeter-read-csv-report
Csv report

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

HighlandCoffee-Uudai

2 thoughts on “JMeter Series – Hướng Dẫn Đọc Dữ Liệu Từ File Csv Để Test Login Form”

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

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