Login vào hệ thống bằng jmeter báo lỗi accounts.google.com năm 2024

Một điểm nữa, khi chạy với 300 users có vài lỗi, quay lại chạy 200 users cũng có vài lỗi. Nếu mình không nhầm thì % lỗi khi chạy 300 users nó sẽ lớn hơn % lỗi khi chạy 200 uses (tính trung bình). Điều này có nghĩa là, ngưỡng mà server của bạn chịu được là ~200 (không xảy ra lỗi), và khi tăng số lượng user lên thì lỗi sẽ tăng dần, đến 1 mức nào đó sẽ là 100% lỗi. Cái này gọi là Stress Testing.

Bên cạnh đó còn có một số yếu tố khách quan gây ra lỗi: [*] Lỗi con người: Configure sai dẫn đến chạy lỗi (có thể lần đầu chạy không lỗi nhưng lần sau lại có lỗi) [*] Lỗi do môi trường: Lúc mạng nhanh thì không vấn đề gì, nhưng gặp lúc ai đó đang down film chẳng hạn, thì nó sẽ khác... [*] Lỗi do tool: Đôi lúc có những vấn đề đến từ Tool (ở đây là JMeter) mà mình không thể lường trước được.

Chính vì vậy nên để có thể phân tích chính xác kết quả test, thì còn phải xem xét nhiều yếu tố như trên nữa.

JMeter là gì? – Đây là một công cụ kiểm thử tải (load testing) và kiểm thử hiệu suất (performance testing) phần mềm được phát triển bởi Apache Software Foundation. Công cụ này mạnh mẽ và đa nền tảng được sử dụng rộng rãi trong việc kiểm thử các ứng dụng web, ứng dụng di động và các hệ thống phân tán. Trong bài viết này, chúng tôi sẽ hướng dẫn các bạn sử dụng công cụ này để kiểm thử hiệu năng cho web server.

Login vào hệ thống bằng jmeter báo lỗi accounts.google.com năm 2024
Giới thiệu về công cụ JMeter

Nội Dung Bài Viết

Giới thiệu chung về JMeter

1. JMeter là gì?

JMeter được sử dụng để kiểm tra hiệu suất của các ứng dụng web, ứng dụng di động và các hệ thống phân tán. Nó cung cấp khả năng tạo ra các yêu cầu tải và đo thời gian phản hồi của các yêu cầu đó. Nó cũng cung cấp các báo cáo chi tiết về thời gian phản hồi, thống kê lỗi và tài nguyên hệ thống sử dụng.

JMeter hỗ trợ nhiều giao thức như HTTP, FTP, JDBC và các giao thức khác. Nó cũng cung cấp các tính năng như mô phỏng các hành vi người dùng khác nhau, tạo ra các kịch bản kiểm thử phức tạp và hiển thị các biểu đồ và đồ thị để phân tích kết quả kiểm thử.

Một tính năng đặc biệt của JMeter là khả năng mở rộng và tùy chỉnh thông qua các plugin và script. Nó cũng hỗ trợ nhiều ngôn ngữ lập trình như Java, Groovy và JavaScript.

Tóm lại, JMeter là một công cụ kiểm thử tải và hiệu suất mạnh mẽ, đa nền tảng và miễn phí được sử dụng rộng rãi trong lĩnh vực phát triển phần mềm để đảm bảo rằng các ứng dụng phần mềm đáp ứng được yêu cầu về hiệu suất và tải.

2. JMeter có thể làm gì?

JMeter là một công cụ kiểm thử tải và hiệu suất mạnh mẽ có thể được sử dụng để thực hiện các nhiệm vụ sau:

  • Kiểm tra hiệu suất của một ứng dụng web hoặc di động: JMeter có khả năng tạo ra các yêu cầu tải và đo thời gian phản hồi của các yêu cầu đó, từ đó đánh giá được hiệu suất của ứng dụng.
  • Kiểm tra độ ổn định của một ứng dụng: JMeter có thể tạo ra các kịch bản kiểm thử phức tạp để kiểm tra độ ổn định của ứng dụng.
  • Mô phỏng các hành vi người dùng khác nhau: JMeter cho phép mô phỏng các hành vi người dùng khác nhau như đăng nhập, thao tác trên giao diện người dùng, thực hiện các tác vụ trên ứng dụng, và đánh giá hiệu suất của ứng dụng cho mỗi hành vi người dùng.
  • Phát hiện lỗi và sự cố trong ứng dụng: JMeter cung cấp các báo cáo chi tiết về thời gian phản hồi, thống kê lỗi và tài nguyên hệ thống sử dụng để giúp phát hiện các lỗi và sự cố trong ứng dụng.
  • Kiểm tra hiệu suất của các hệ thống phân tán: JMeter có thể được sử dụng để kiểm tra hiệu suất của các hệ thống phân tán bao gồm nhiều máy chủ, ứng dụng và cơ sở dữ liệu.
  • Tự động hóa quá trình kiểm thử: JMeter có khả năng tự động hóa quá trình kiểm thử, giúp tiết kiệm thời gian và tăng độ chính xác của các kết quả kiểm thử.

3. Đặc trưng của JMeter

JMeter là một công cụ kiểm thử tải và hiệu suất phần mềm mạnh mẽ, với nhiều đặc trưng tiên tiến và khả năng linh hoạt. Dưới đây là một số đặc trưng chính của JMeter:

  • Hỗ trợ nhiều giao thức: JMeter hỗ trợ nhiều giao thức như HTTP, FTP, JDBC và các giao thức khác.
  • Mô phỏng hành vi người dùng: JMeter cho phép mô phỏng các hành vi người dùng khác nhau và đánh giá hiệu suất của ứng dụng theo từng hành vi.
  • Tạo kịch bản kiểm thử phức tạp: JMeter có thể tạo ra các kịch bản kiểm thử phức tạp để kiểm tra độ ổn định và hiệu suất của ứng dụng.
  • Đo thời gian phản hồi: JMeter có khả năng đo thời gian phản hồi của các yêu cầu tải và hiển thị các kết quả chi tiết về thời gian phản hồi.
  • Báo cáo và phân tích kết quả kiểm thử: JMeter cung cấp các báo cáo chi tiết về thời gian phản hồi, thống kê lỗi và tài nguyên hệ thống sử dụng để giúp phân tích kết quả kiểm thử.
  • Khả năng mở rộng và tùy chỉnh: JMeter có khả năng mở rộng và tùy chỉnh thông qua các plugin và script, cũng như hỗ trợ nhiều ngôn ngữ lập trình như Java, Groovy và JavaScript.
  • Hỗ trợ kiểm thử API: JMeter cung cấp các công cụ để kiểm thử các API RESTful và SOAP. Người dùng có thể tạo các yêu cầu HTTP đến API và đánh giá phản hồi của API.

Cách thức hoạt động của JMeter

JMeter hoạt động bằng cách tạo ra các yêu cầu tải và đo thời gian phản hồi của các yêu cầu đó. Các bước cơ bản để sử dụng JMeter để kiểm thử tải và hiệu suất của một ứng dụng bao gồm:

  • Tạo kịch bản kiểm thử: Người dùng sẽ tạo một kịch bản kiểm thử bằng cách thêm các yêu cầu tải vào JMeter. Các yêu cầu này có thể được tạo bằng cách nhập các thông tin như URL, phương thức HTTP, tham số yêu cầu và các thông số khác.
  • Cấu hình các thiết lập kiểm thử: Người dùng cần cấu hình các thiết lập kiểm thử như số lượng người dùng đồng thời, thời gian tải, thời gian giữa các yêu cầu và các thiết lập khác.
  • Chạy kiểm thử: Sau khi đã tạo kịch bản kiểm thử và cấu hình các thiết lập kiểm thử, người dùng có thể chạy kiểm thử để tạo ra các yêu cầu tải và đo thời gian phản hồi của các yêu cầu đó.
  • Phân tích kết quả kiểm thử: JMeter cung cấp các báo cáo chi tiết về thời gian phản hồi, thống kê lỗi và tài nguyên hệ thống sử dụng để giúp phân tích kết quả kiểm thử.

Cách tạo kịch bản kiểm thử hiệu năng với JMeter

Để tạo kịch bản kiểm thử hiệu năng với JMeter, bạn có thể làm theo các bước sau:

  • Tạo một kế hoạch kiểm thử mới: Mở JMeter và tạo một kế hoạch kiểm thử mới bằng cách chọn File -> New.

Login vào hệ thống bằng jmeter báo lỗi accounts.google.com năm 2024
Tạo một kế hoạch kiểm thử mới

  • Thêm một nhóm thread (Thread Group): Nhấp chuột phải vào kế hoạch kiểm thử và chọn Add -> Threads (Users) -> Thread Group. Nhóm thread sẽ đại diện cho một nhóm người dùng tương tác với ứng dụng.

Login vào hệ thống bằng jmeter báo lỗi accounts.google.com năm 2024
Thêm một nhóm thread (Thread Group)

  • Cấu hình thiết lập nhóm thread: Trong nhóm thread, bạn có thể cấu hình số lượng người dùng, thời gian tải, thời gian giữa các yêu cầu và các thông số khác. Như ảnh bên dưới chúng tôi đã cấu hình cho JMeter sẽ giả lập thao tác cho 5 users thực hiện trong 5s truy cập vào trang google.com, tức là mỗi user sẽ tiến hành thực hiện cách nhau 1s và lặp lại 1 lần.

Login vào hệ thống bằng jmeter báo lỗi accounts.google.com năm 2024
Cấu hình thiết lập nhóm thread

  • Thêm yêu cầu tải (HTTP Request): Nhấp chuột phải vào nhóm thread và chọn Add -> Sampler -> HTTP Request. Điền các thông tin như URL, phương thức HTTP, tham số yêu cầu và các thông số khác.

Login vào hệ thống bằng jmeter báo lỗi accounts.google.com năm 2024
Thêm yêu cầu tải (HTTP Request)

Login vào hệ thống bằng jmeter báo lỗi accounts.google.com năm 2024
Thêm yêu cầu tải (HTTP Request) đến trang google.com

  • Cấu hình yêu cầu tải: Trong yêu cầu tải, bạn có thể cấu hình các thiết lập như tên DNS, cổng và các thông số khác nếu cần thiết. Dưới đây là cách cấu hình Base_URL là localhost và cổng là 8000

Login vào hệ thống bằng jmeter báo lỗi accounts.google.com năm 2024
Cấu hình yêu cầu tải

  • Thêm các phương tiện xác thực (Authentication): Nếu ứng dụng yêu cầu phương tiện xác thực, bạn có thể thêm các phương tiện xác thực bằng cách chọn Add -> Config Element -> HTTP Authorization Manager.

Login vào hệ thống bằng jmeter báo lỗi accounts.google.com năm 2024
Chuẩn bị file CSV để làm dữ liệu đầu vào

Login vào hệ thống bằng jmeter báo lỗi accounts.google.com năm 2024
Gọi dữ liệu từ CSV file

Login vào hệ thống bằng jmeter báo lỗi accounts.google.com năm 2024
Lưu trữ lại token

Login vào hệ thống bằng jmeter báo lỗi accounts.google.com năm 2024
Sử dụng token bên trên để login

  • Lưu và chạy kế hoạch kiểm thử: Sau khi đã tạo kế hoạch kiểm thử, bạn có thể lưu và chạy kế hoạch để tạo ra các yêu cầu tải và đo thời gian phản hồi của các yêu cầu đó.

Login vào hệ thống bằng jmeter báo lỗi accounts.google.com năm 2024
Xem kết quả sau khi chạy kế hoạch kiểm thử

  • Phân tích kết quả kiểm thử: JMeter cung cấp các báo cáo chi tiết về thời gian phản hồi, thống kê lỗi và tài nguyên hệ thống sử dụng để giúp phân tích kết quả kiểm thử. Dựa vào hình ảnh bên dưới thì cả 5 users đều đã truy cập thành công vào hệ thống trong vòng 5s, và không có user nào bị lỗi.

Login vào hệ thống bằng jmeter báo lỗi accounts.google.com năm 2024
Phân tích kết quả kiểm thử

Ngoài ra, JMeter còn có thể tạo ra các kịch bản kiểm thử phức tạp hơn bằng cách sử dụng các tính năng như mô phỏng các hành vi người dùng khác nhau, tạo ra các kịch bản kiểm thử đa nền tảng và tùy chỉnh các kịch bản kiểm thử bằng các plugin và script.

Kết luận

JMeter là một công cụ mã nguồn mở được sử dụng để kiểm thử hiệu năng, tải và độ tin cậy của các ứng dụng web. Nó cung cấp các tính năng mạnh mẽ để tạo ra các kịch bản kiểm thử phức tạp và đo thời gian phản hồi của các yêu cầu tải.

Để sử dụng JMeter để kiểm thử hiệu năng cho Web Server, bạn có thể làm theo các bước sau:

  • Tạo kế hoạch kiểm thử mới.
  • Thêm nhóm thread (Thread Group) và cấu hình thiết lập nhóm thread.
  • Thêm yêu cầu tải (HTTP Request) và cấu hình yêu cầu tải.
  • Thêm các phương tiện xác thực (Authentication) nếu cần thiết.
  • Lưu và chạy kế hoạch kiểm thử.
  • Phân tích kết quả kiểm thử để đánh giá hiệu suất của Web Server.

JMeter là một công cụ quan trọng cho việc kiểm thử hiệu năng của các ứng dụng web. Nó cung cấp các tính năng mạnh mẽ để tạo ra các kịch bản kiểm thử phức tạp và phân tích kết quả kiểm thử.