JMeter
Apache Jmeter là một phần mềm, thuộc hàng tool kiểm thử viết bằng Java để kiểm thử chức năng và hiệu suất
Jmeter có khả năng:
- Giả lập một nhóm người dùng
- Gửi các yêu cầu đến máy chủ mục tiêu
- Nhận và xử lý các response của máy chủ để hình thành các flow E2E
- Tổng hợp kết quả với các thông số, tổng hợp biểu đồ, đồ thị,…
Giao diện thuộc hàng dễ dùng, ít nhất là dễ hơn cái SOAPUI củ chuối
Kiểm thử được nhiều server: HTTP/HTTPS, SOAP, LDAP, JMS, Mail-POP3, Database-JDBC,…
Chạy được trên Windows, MacOS, Linux,…
Đa luồng, có thể chạy nhiều thread - tương ứng với giả lập nhiều người dùng
Hỗ trợ code bổ sung cho các xử lý ở trước với Pre Processor, sau với JSR223 Post Processor, hỗ trợ Java hoặc Groovy (code như Java)
Các tác vụ xác minh dạng Assertion cũng có thể được thực hiện
Sử dụng
Thêm Thread Group
Bắt đầu với Add ở Test Plan -> Threads (Users) -> Thread Group
Các đặc tính có thể đưa vào:
- Number of Threads : Số lượng người dùng
- Loop Count: Số lần lặp lại
- Ramp-Up Period: Thời gian giữa các thread bắt đầu, tương đương với thời gian khi bắt đầu một người dùng tiếp theo
Thêm HTTP Request Defaults
Đây là nơi để cài đặt các giá trị mặc định cho các HTTP Request, như server name, port number, protocol, path,…
Bình thường với HTTP Req Def thì chúng ta sẽ truyền vào protocol và url của server, sau đó trong các HTTP Request chúng ta chỉ cần truyền vào path
Thêm phần từ Jmeter
Bắt đầu với việc thêm vào các thread group các hành động cần thực hiện, ở đây chúng ta sẽ thực hiện các HTTP Request, vậy thì đưa vào nó Add -> Sampler -> HTTP Request
Sau đó trong các HTTP Request này đưa vào HTTP Header Manager để kiểm soát Header của Request, sau đó trong thuộc tính của Request chúng ta truyền vào Body Data, Path, Method, server name,…
Thêm Assertion
Để kiểm tra kết quả trả về, chúng ta cần thêm Assertion, Add -> Assertion -> Response Assertion
Thêm Listener
Để xem kết quả, chúng ta cần thêm Listener, Add -> Listener -> View Results in Table hoặc View Results Tree cho cơ bản nhất, ngoài ra cũng có các dạng hiển thị kết quả tuỳ theo ý muốn
Cài đặt biến môi trường
Khi muốn sử dụng một giá trị nào đó nhiều lần, chúng ta cần cài đặt biến môi trường, Add -> Config Element -> User Defined Variables
Ví dụ, base_url của một API, chúng ta có thể cài đặt biến môi trường base_url = http://localhost:8080/api
Sau đó trong HTTP Request Default truyền vào ${base_url} cho Server Name or IP
Chạy
Chạy bằng cách nhấn nút Start, sau đó chờ kết quả, sau khi chạy xong, chúng ta có thể xem kết quả trong các Listener đã thêm vào
Việc xử lý kết quả cũng có thể được thực hiện bằng cách thêm các Post Processor, Pre Processor, …