Tìm hiểu Performance Testing

Tìm hiểu Performance Testing

Performance testing là gì?

alt

  • Performance testing là từ tiếng Anh được sử dụng nhiều trong lĩnh vực với ý nghĩa được dịch ra là kiểm tra năng suất. Tuy nhiên với mỗi lĩnh vực mà Performance testing lại có một ý nghĩa nhất định nhưng nhìn chung nghĩa chung nhất để hiểu về Performace testing là hoạt động chỉ việc kiểm tra năng suất.

  • Performace testing hiện nay được sử dụng nhiều nhất trong lĩnh vực IT và đặc biệt trong khâu đảm bảo chất lượng phần mềm. Bản chất cụ thể của Performance testing là kiểm thử hiệu năng.
    Thực chất nó là một loại kiểm thử để xác định tốc độ của máy tính, tốc độ mạng hoặc thiết bị. Nó kiểm thử hiệu suất của các thành phần của một hệ thống bằng cách truyền các tham số khác nhau trong những kịch bản test khác nhau.

Lưu ý, kiểm thử hiệu năng khác với kiểm thử lập trình. Mục tiêu của kiểm thử lập trình là tìm ra lỗi trong mã nguồn sản phẩm. Còn đối với kiểm thử hiệu năng, mục tiêu của kiểm thử hiệu năng là nhằm tìm ra hiệu năng thực của hệ thống dưới các khối lượng truy cập khác nhau.

Performace test bao gồm 6 loại thông dụng : Load testing, Stress testing, Volumn testing, Spike testing, Scability testing. Nhưng trong bài viết này thì mình sẽ giới thiệu 2 loại thông dụng nhất là: Load testing và Stress testing.

Load Test là gì?

alt

Load testing là quá trình mô phỏng độ chịu tải thực tế của bất kỳ ứng dụng hoặc trang web nào. Nó kiểm thử cách ứng dụng hoạt động trong điều kiện hoạt động bình thường và hoạt động hiệu suất cao. Loại kiểm thử này được áp dụng cho những dự án gần đi đến giai đoạn hoàn thành.

Stress testing là gì?

alt

Stress testing là một loại kiểm thử xác định sự ổn định và tính mạnh mẽ của hệ thống. Đây là một kỹ thuật kiểm thử không chức năng. Kỹ thuật kiểm thử này sử dụng mô hình mô phỏng tự động để kiểm thử tất cả các giả thuyết.

Bảng so sánh Performance testing, Load testing và Stress testing

alt

alt
alt

*SLA ( Service Level Agreement - tạm dịch là mức độ thỏa thuận dịch vụ ) là cam kết giữa nhà cung cấp dịch vụ đối với khách hàng sử dụng dịch vụ.

Vậy thì khi nào mình cần Performance testing?

Performance testing được thực hiện để kiểm tra hiệu suất của máy chủ trang web, cơ sở dữ liệu và mạng. Nếu bạn đang áp dụng phương pháp Waterfall, thì điều quan trọng là bạn phải kiểm tra từng lần phát hành phiên bản mới. Tuy nhiên, nếu bạn đang sử dụng cách tiếp cận phát triển phần mềm nhanh, thì bạn cần kiểm thử ứng dụng liên tục.

Khi nào sử dụng Load testing?

Load testing được thực hiện để xác định hệ thống có thể quản lý, xử lý lệnh của bao nhiêu người dùng. Bạn cũng có thể kiểm tra các tình huống khác nhau cho phép bạn tập trung vào các phần khác nhau của hệ thống. Giống như trang chủ hoặc trang web thanh toán của bạn để thử nghiệm mức tải của web. Nó cũng giúp bạn xác định cách xây dựng và duy trì trong hệ thống.

Quy trình khi thực hiện Load test
alt

Khi nào sử dụng Stress testing?

Stress testing trên web hay ứng dụng là điều rất quan trọng với những trang web hay ứng dụng về những sự kiện lớn như bán vé cho một buổi hòa nhạc nổi tiếng với nhu cầu cao của người dân. Vì vậy, điều quan trọng là kiểm tra thường xuyên với khả năng chịu tải của hệ thống. Điều này cũng giúp bạn chuẩn bị cho các tình huống bất ngờ, dành nhiều thời gian hơn và nguồn lực để khắc phục bất kỳ sự cố nào.

Quy trình khi thực hiện Stress testing
alt

Kết luận

Performance testing là một phương pháp kiểm thử được sử dụng để xác định tốc độ của máy tính, mạng hoặc thiết bị. Load testing kiểm tra sức chịu tải của bất kỳ ứng dụng hoặc trang web nào. Stress testing xác định sự ổn định và sự mạnh mẽ của hệ thống. Performance testing giúp kiểm tra hiệu suất của máy chủ trang web, cơ sở dữ liệu, mạng. Load testing được sử dụng cho Client / Server, các ứng dụng trên nền Web. Stress testing kiểm tra độ ổn định website của bạn khi gặp trường hợp lưu lượng truy cập quá lớn.

Cảm ơn mọi người đã đọc bài ạ !!!