Jmeter là công cụ để đo độ tải và performance của đối tượng, có thể sử dụng để test performance trên cả nguồn tĩnh và nguồn động, có thể kiểm tra độ tải và hiệu năng trên nhiều loại server khác nhau như: Web – HTTP, HTTPS, SOAP, Database via JDBC, LDAP, JMS, Mail – SMTP(S), POP3(S) and IMAP(S)… Jmeter là một mã nguồn mở được viết bằng java. Cha đẻ của JMeter là Stefano Mazzocchi sau đó Apache đã thiết kế lại để cải tiến hơn giao diện đồ họa cho người dùng và khả năng kiểm thử hướng chức năng. Các đặc trưng của jmeter:
Sau khi chạy thành công Jmeter, tạo mới một kịch bản test, và ở đây em đặt tên là Test_Tour:
Hình 1: Minh họa tạo kịch bản mới với jmeter
Bước 1: Giả lập nhiều user cùng truy cập vào website đồng thời: Chuột phải vào Test Plan –> Add –> Threads(users) –> Thread GroupHình 2: Minh hoạ tạo Thread Group mới trong jmeter
Name : đặt tên cho ThreadGroup ( ở đây e có thể đặt là Thread Group Tour ).
Number of Threads(users) : số lượng người dùng mà ta muốn mô phỏng.
Ramp-up Period (in seconds): Cho biết thời gian để JMeter tạo ra tất cả những thread cần thiết. Ví dụ nếu tham số này là 10 thì trong 10 giây tất cả các Number of Threads đã khai báo ở trên sẽ được gửi đi trong 10 giây, nếu đặt tham số này là 0 thì tất cả các yêu cầu sẽ được gửi đi cùng một lúc.
Loop Count Forever : 1 các thread được tạo sẽ thực hiện 1 lần( thay 1 bằng n thì số các thread sẽ lặp n lần).
Bước 2: Tạo các Request đến server: 1 thread(tương ứng 1 user) có thể tạo nhiều request http gửi lên server . Chuột phải vào Thread group –> add –> sample –> http request DefaultHình 3: Minh họa tạo http request Default
Với các phần tử:
Name: Đặt tên Request
Server name of IP: Điền vào Domain hoặc IP trang web mà mình đang cần test
Port Number: Chỉ ra port của web, nếu để trống thì sẽ default là 80
Protocol: Giao thức được sử dụng là HTTP hoặc HTTPs
Method: Phương thức để các HTTP request. có các method: GET, POST, HEAD, PUSH..
Path: Đường dẫn các nguồn để xử lý các request
Parameter: Biểu diễn danh sách các tham số để gửi cùng request. (có thể thêm hoặc xoá thông số này)
Send files with the request: Giả lập việc upload file
Retrieve All embedded Resources: Dùng để download các trang java applet được nhúng trên trang web đang test.
Ví dụ ở đây e chạy kiểm thử ở trang web http://fbt5.herokuapp.com/ thì e sẽ điền các thông tin: Protocol[http]: https Server Name or Ip : fbt5.herokuapp.com/ Port number :
Bước 3: Chạy và xem kết quả chạy các request Có thể add các kiểu kết quả hiển thị vào với listener: Click chuột phải vào Thread Group -> add -> Listener
Hình 4: Minh họa thêm kiểu hiển thị kết quả chạy trong jmeter
Click vào run để chạy kịch bản test:
Hình 5: Minh họa chạy một kịch bản kiểm thử trên jmeter
Kết quả chạy sẽ hiển thị ra các kiểu tùy theo mình lựa chọn hiển thị, ví dụ như các hình họa như sau:
Hình 6: Hiển thị kết quả kiểm thử hình cây trên jmeter
Hình 7: Hiển thị tổng kết kết quả kiểm thử trên jmeter
Phân tích các thông số
Các thông số như sau:
Samples = Number of Thread (users)*Loop Count
Response Time THẤP và Thoughput THẤP –> Trường hợp này sẽ không bao giờ xảy ra. Vì Response Time THẤP nghĩa là thời gian đáp ứng rất nhanh, nhưng Throughput THẤP lại chỉ ra rằng số request được xử lý rất ít. Điều này là vô lý
Response Time THẤP và Throughput CAO –> Đây là một kết quả lý tưởng . Thời gian xử lý thấp và số lượng request xử lý cùng đồng thời lại cao. Điều này chứng tỏ rằng Server đang rất tốt.
Response Time CAO và Throughput THẤP –> Test chỉ ra rằng thời gian xử lý quá cao, và lượng request được xử lý lại rất thấp. Phải xem xét để improve về phía sever.
Response Time CAO and Throughput CAO –> Throughput cao, tức là server đang làm việc rất tốt, vậy tại sao thời gian xử lý lại cũng cao (không tốt). Có thể vấn đề lúc này đế từ phía Client, hoặc cụ thể là đến từ JMeter, có thể đoạn script của bạn viết chưa được tối ưu, khiến quá trình nó xử lý mất nhiều thời gian chẳng hạn.
Nguồn: https://viblo.asia/p/jmeter-cong-cu-kiem-thu-hieu-nang-chuyen-nghiep-924lJWGX5PM
You need to login in order to like this post: click here
YOU MIGHT ALSO LIKE