Kiểm thử hiệu năng được thực hiện nhằm xác định tốc độ, khả năng phân tải và mức độ tin tưởng của phần mềm trong môi trường nhiều người dùng, có nhiều hoạt động khác nhau.
Dùng công cụ kiểm tra tự động để kiểm tra hiệu năng phần mềm ở điều kiện có sự điều chỉnh về mức độ tải.
Trong kiểm thử phần mềm, kiểm thử hiệu năng làm kiểm tra hiệu quả hoạt động của phần mềm, khả năng, tốc độ vận hành của hệ thống. Nó cũng có thể dùng để xác minh và xác nhận chất lượng của hệ thống, chẳng hạn như quy mô, độ tin cậy, sử dụng tài nguyên của hệ thống.
Kiểm thử hiệu năng có thể phục vụ nhiều mục đích khác nhau. Có thể dùng để chứng minh rằng hệ thống đáp ứng các tiêu chí hiệu suất. Nó có thể so sánh hai hệ thống để tìm ra hệ thống tốt hơn. Hoặc có thể dùng để tìm ra phần nào của hệ thống khiến hệ thống hoạt động kém.
Khi thực hiện kiểm thử hiệu năng, kiểm thử viên phải đề ra kết quả mong đợi một cách rõ ràng. Ví dụ: đối với ứng dụng web, chúng ta cần biết thông số quan trọng là: số kết nối (session) đồng thời mà máy chủ có thể phục vụ, thời gian (bao nhiêu phút/giây) mà trình duyệt nhận được kết quả từ máy chủ, ...
Khi thực hiện kiểm thử hiệu năng người ta thường chọn thời điểm mà chương trình tương đối ổn định. Thông thường chức năng nằm trong tình huống cần kiểm tra hiệu năng đã được kiểm tra là chạy đúng. Điều này sẽ giúp cho việc phân tích đánh giá kết quả của PT dễ dàng và đúng đắn.
Kiểm thử hiệu năng gồm ba loại kiểm thử sau:[12]
- Kiểm thử tải dữ liệu (Load testing) là một phần trong qui trình thực hiện kiểm thử hiệu năng. Kiểm thử tải trọng đôi khi còn gọi là Volume Test. Dùng công cụ KTTĐ để kiểm tra phần mềm ở điều kiện liên tục tăng mức độ chịu tải. Tuy nhiên mức độ chịu tải cao nhất vẫn ở mức chức năng PM hoạt động đúng.
- Kiểm thử tải trọng (Stress Test) được sử dụng để xác định các điểm phá vỡ ứng dụng trong điều kiện chịu tải cao nhất. Ví dụ các giao dịch được gửi đến máy chủ nhanh nhất có thể để hư hỏng ứng dụng. Thử nghiệm này rất hữu ích không những xác định khi nào hệ thống sẽ phá vỡ, mà còn cho biết số lượng yêu cầu tối đa trên mỗi đơn vị thời gian (yêu cầu / phút) mà hệ thống có thể xử lý. [12]
- Kiểm thử độ tin cậy (Reliability Test) xác định bao lâu ứng dụng có thể duy trì mức hiệu suất tối đa theo tải dự kiến. Kiểm thử này thực hiện một khối lượng công việc ổn định hoặc phù hợp trên ứng dụng trong một khoảng thời gian lớn.[12]
Mỗi kiểm thử sẽ cho phép kiểm thử viên cung cấp một phân tích đầy đủ và toàn diện về hiệu suất phần mềm kiểm thử, và xác định tắc nghẽn nghiêm cấm tăng hiệu suất.[12]