KIỂM THỬ HIỆU NĂNG LÀ GÌ

  -  
Kiểm thử hiệu năng là một quy trình kiểm thử phần mềm được sử dụng để kiểm tra tốc độ, thời gian phản hồi, độ ổn định, độ tin cậy, khả năng mở rộng và sử dụng tài nguyên của một ứng dụng phần mềm trong khối lượng công việc cụ thể. Kiểm thử hiệu năng không phải là loại kiểm thử tập trung vào việc tìm ra lỗi phần mềm hoặc sai sót của hệ thống mà để đo lường dựa theo các mốc và tiêu chuẩn, nhờ đó có thể giúp đội dev phỏng đoán được và loại trừ các rủi ro trong quá trình vận hành hệ thống.

Bạn đang xem: Kiểm thử hiệu năng là gì

Trọng tâm của kiểm thử hiệu năng là

Tốc độ - Xác định xem ứng dụng có phẩn hồi nhanh chóng hay khôngKhả năng mở rộng - Xác định số người dùng tối đa mà ứng dụng phần mềm có thể xử lýTính ổn định - Xác định xem ứng dụng có ổn định trong các loại trường hợp khác nhau

Tại sao phải kiểm thử hiệu năng


*

Kiểm thử hiệu năng được thực hiện để cung cấp thông tin cho các bên liên quan về ứng dụng của họ liên quan đến tốc độ, tính ổn định và khả năng mở rộng. Quan trọng hơn, kiểm thử hiệu năng còn giúp phát hiện ra những gì cần cải thiện trước khi đưa sản phẩm ra thị trường. Nếu không có kiểm thử hiệu năng, phần mềm có thể gặp phải các vấn đề như: chạy chậm trong khi có một số lượng người dùng lớn sử dụng nó đồng thời, tính không nhất quán giữa các hệ điều hành khác nhau và khả năng sử dụng kém.

Kiểm thử hiệu năng sẽ xác định phần mềm của họ có đáp ứng các yêu cầu về tốc độ, khả năng mở rộng và độ ổn định trong khối lượng công việc dự kiến hay không. Các ứng dụng được đưa ra thị trường với chỉ số hiệu năng kém do không tồn tại hoặc kiểm tra hiệu năng kém có khả năng bị mang tiếng xấu và không đạt được mục tiêu khách hàng mong đợi.

Ngoài ra, các ứng dụng quan trọng như chương trình phóng vào không gian hoặc thiết bị y tế cứu sống cần được kiểm tra hiệu năng để đảm bảo rằng chúng chạy trong thời gian dài không bị sai lệch.

Các loại kiểm thử hiệu năng

Load testing ( Kiểm thử tải trọng)

Kiểm thử tải trọng để đánh giá hiệu năng hệ thống khi khối lượng công việc tăng lên (Khối lượng công việc ở đây được hiểu là khối lượng request từ phía user). Hệ thống được giám sát để tính toán thời gian phản hồi và giữ hệ thống ổn định khi khối lượng công việc tăng lên.

Stress testing

Không giống như kiểm thử tải trọng, stress được biết đến như là kiểm thử sự giới hạn của hệ thống - nó được dùng để đo lường hiệu năng của hệ thống khi vượt quá các thông số bình thường. Phần mềm có thể sẽ phải tiếp nhận nhiều người dùng hoặc nhiều luồng truy cập hơn khả năng của nó. Mục đích của stess testing là đo lường mức độ ổn định của phần mềm. Hệ thống gặp trục trặc ở phần nào và làm thế nào để phần mềm có thể khắc phục lỗi đó.

Xem thêm: Cách Tải Phần Mềm Mt4 (Metatrader 4) Của Xm, Tải Metatrader 4 Cho Máy Tính

Endurance testing (Kiểm thử độ bền vững)

Kiểm thử độ bền vững - còn được gọi là soak testing - là chỉ số đánh giá phần mềm hoạt động như thế nào với khối lượng công việc thông thường trong một thời gian dài. Mục đích của loại kiểm thử này là để kiểm tra những vấn đề về bộ nhớ của hệ thống như rò rỉ bộ nhớ (memory leak) (Rò rỉ bộ nhớ thường xảy ra khi hệ thống gặp vấn đề trong việc giải phóng bộ nhớ không sử dụng nữa. Rò rỉ bộ nhớ có thể làm suy giảm hiệu năng của hệ thống hoặc khiến hệ thống ngừng hoạt động).

Spike testing

Spike testing là một loại stress testing, nó được đưa ra để đánh giá hiệu năng của phần mềm khi khối lượng công việc tăng lên nhanh chóng và thường xuyên. Khối lượng công việc thường sẽ vượt qua mức bình thường trong thời gian ngắn.

Volume testing (Kiểm thử khối lượng)

Kiểm thử khối lượng xác định phần mềm hoạt động hiệu quả như thế nào với khối lượng lớn dữ liệu. Nó còn được biết đến như flood testing bởi nó kiểm thử hệ thống với một khối lượng lớn dữ liệu.

Scalability testing (Kiểm thử khả năng mở rộng)

Kiểm thử khả năng mở rộng được dùng để xác định xem phần mềm có hoạt động hiệu quả khi khối lượng công việc tăng hay không. Nó được thực hiện bằng cách thêm khối lượng user truy cập hoặc khối lượng data đồng thời theo dõi hoạt động của hệ thống. Khối lượng công việc có thể không thay đổi trong khi các tài nguyên như CPUs hay dung lượng bộ nhớ thay đổi.

Xem thêm: Lot Là Gì? Hướng Dẫn Sử Dụng Lot Trong Forex What Are Lots, Pips, And Leverage

Các vấn đề phổ biến về hiệu năng

Hầu hết các vấn đề về hiệu năng đều xoay quanh tốc độ, thời gian phản hồi, thời gian tải và khả năng mở rộng kém. Tốc độ thường là một trong những thuộc tính quan trọng nhất của một ứng dụng. Một ứng dụng chạy chậm sẽ mất đi những người dùng tiềm năng. Kiểm thử hiệu năng được thực hiện để đảm bảo một ứng dụng chạy đủ nhanh để thu hút sự chú ý và quan tâm của người dùng. Hãy xem danh sách các vấn đề phổ biến về hiệu năng phổ biến sau đây và lưu ý tốc độ là một yếu tố phổ biến trong nhiều vấn đề trong số đó:

Thời gian tải lâu - Thời gian tải lâu thường là thời gian ban đầu để ứng dụng khởi động. Điều này thường được giữ ở mức tối thiểu. Trong khi một số ứng dụng không thể tải trong vòng dưới 1 phút, thời gian tải nên được giữ dưới vài giây nếu có thể.Thời gian phản hồi kém - Thời gian phản hồi là thời gian cần từ khi người dùng nhập dữ liệu vào ứng dụng cho đến khi ứng dụng xuất ra phản hồi cho đầu vào đó. Nói chung, điều này sẽ rất nhanh chóng. Một lần nữa, nếu người dùng phải đợi quá lâu, họ sẽ mất hứng thú.Khả năng mở rộng kém - Một sản phẩm phần mềm có khả năng mở rộng kém khi nó không thể xử lý số lượng người dùng dự kiến hoặc khi nó không đáp ứng đủ nhiều phạm vi người dùng. Kiểm tra tải nên được thực hiện để chắc chắn rằng ứng dụng có thể xử lý số lượng người dùng dự kiến.Bottlenecking - Thường xảy ra khi luồng dữ liệu bị ngắt hoặc ngừng vì không đủ bộ nhớ khi khối lượng request tăng lên. Một số bottlenecking hiệu suất phổ biến là:

CPU utilization (Khối lượng sử dụng CPU)Memory utilization (Rò rỉ bộ nhớ)Network utilization (Cấu hình mạng kém)Operating System limitations (Giới hạn của hệ thống)Disk usage (Khối lượng sử dụng ổ đĩa)

Quy trình kiểm thử hiệu năng

Phương pháp được áp dụng để kiểm thử hiệu năng có thể rất khác nhau nhưng mục tiêu của các bài kiểm tra vẫn giống nhau. Nó có thể giúp chứng minh rằng hệ thống phần mềm của bạn đáp ứng một số tiêu chí hiệu năng được xác định trước. Hoặc có thể giúp so sánh hiệu năng của hai hệ thống phần mềm. Nó cũng có thể giúp xác định các phần của hệ thống phần mềm của bạn làm giảm hiệu năng của nó.