Kiểm tra phi chức năng

⚡ Tóm tắt thông minh

Kiểm thử phi chức năng (Non Functional Testing) xác nhận hiệu suất của một ứng dụng phần mềm về độ tin cậy, khả năng sử dụng, bảo mật, khả năng mở rộng và các thuộc tính chất lượng khác. Hướng dẫn này giải thích các mục tiêu, thông số, đặc điểm, các loại kiểm thử phổ biến và các ví dụ thực tế về các trường hợp kiểm thử được các nhóm đảm bảo chất lượng sử dụng.

  • 🎯 Trọng tâm chất lượng: Kiểm thử phi chức năng đo lường hiệu suất của hệ thống chứ không phải những gì hệ thống thực hiện.
  • 📏 Tiêu chí đo lường: Mọi yêu cầu đều được định lượng, loại bỏ những từ ngữ chủ quan như tốt, tốt hơn hoặc tốt nhất.
  • 🔐 Các thông số quan trọng: Bảo mật, độ tin cậy, khả năng mở rộng, tính dễ sử dụng và tính di động là những yếu tố chi phối quá trình xác thực phi chức năng.
  • 🧪 Các loại bài kiểm tra đa dạng: Các bài kiểm tra về hiệu năng, tải trọng, độ bền, khả năng phục hồi và khả năng tương thích đều nhằm giải quyết các rủi ro chất lượng cụ thể.
  • 📊 Ảnh hưởng kinh doanh: Việc kiểm thử phi chức năng hiệu quả giúp giảm chi phí sản xuất, thời gian ngừng hoạt động và sự không hài lòng của khách hàng qua các phiên bản phát hành.

Kiểm tra phi chức năng

Kiểm tra phi chức năng là gì?

Kiểm tra phi chức năng Kiểm thử phi chức năng là một loại kiểm thử phần mềm dùng để xác thực các khía cạnh phi chức năng của ứng dụng — hiệu năng, khả năng sử dụng, độ tin cậy và các thuộc tính chất lượng tương tự. Nó đánh giá sự sẵn sàng của hệ thống dựa trên các tiêu chí mà kiểm thử chức năng không bao giờ đề cập đến, đảm bảo ứng dụng đáp ứng kỳ vọng của doanh nghiệp trong điều kiện thực tế.

Một ví dụ điển hình về kiểm thử phi chức năng là đo lường số lượng người dùng đồng thời có thể đăng nhập vào ứng dụng mà không làm giảm hiệu suất. Kiểm thử phi chức năng cũng quan trọng như kiểm thử chức năng vì nó ảnh hưởng trực tiếp đến sự hài lòng của khách hàng và nhận thức tổng thể về sản phẩm.

Sơ đồ tổng quan về Kiểm thử phi chức năng

Mục tiêu của thử nghiệm phi chức năng

Kiểm thử phi chức năng được thực hiện nhằm cải thiện chất lượng tổng thể và tuổi thọ của sản phẩm. Các mục tiêu chính bao gồm:

  • Tăng cường tính khả dụng, hiệu quả, khả năng bảo trì và tính di động của sản phẩm.
  • Giảm thiểu rủi ro sản xuất và chi phí liên quan đến các lỗi không ảnh hưởng đến chức năng sản phẩm.
  • Tối ưu hóa quy trình cài đặt, thiết lập, vận hành, quản lý và giám sát sản phẩm.
  • Thu thập số liệu và chỉ số phục vụ cho nghiên cứu và phát triển nội bộ.
  • Nâng cao hiểu biết về hoạt động của sản phẩm và các công nghệ đang được sử dụng.

Đặc điểm của thử nghiệm phi chức năng

Các đặc điểm sau đây xác định cách lập kế hoạch và thực hiện kiểm thử phi chức năng:

  • Nó phải đo lường được, không được phép có những mô tả chủ quan như tốt, tốt hơn hoặc tốt nhất.
  • Thông thường, các con số chính xác chưa được biết rõ ngay từ đầu quá trình xác định yêu cầu.
  • Các yêu cầu phải được ưu tiên để các khu vực có rủi ro cao nhất được giải quyết trước.
  • Các thuộc tính chất lượng được xác định chính xác trong giai đoạn thiết kế phần mềm.

Các thông số kiểm thử phi chức năng

Thông thường, người ta sử dụng mười một tham số để xác định phạm vi của các nỗ lực kiểm thử phi chức năng:

  1. An ninh: Đo lường mức độ bảo vệ hệ thống trước các cuộc tấn công có chủ đích và vô tình từ các nguồn nội bộ hoặc bên ngoài. Được xác minh thông qua kiểm thử bảo mật.
  2. Độ bền: Mức độ mà một hệ thống liên tục thực hiện các chức năng được chỉ định mà không gặp sự cố. Được xác minh thông qua Kiểm tra Độ tin cậy.
  3. Khả năng sống sót: Xác nhận rằng hệ thống vẫn tiếp tục hoạt động và tự phục hồi sau khi xảy ra sự cố. Đã được xác minh thông qua Kiểm thử Phục hồi.
  4. Khả dụng: Xác định mức độ tin cậy của hệ thống đối với người dùng trong quá trình vận hành. Được kiểm chứng thông qua thử nghiệm độ ổn định.
  5. Khả năng sử dụng: Mức độ dễ dàng mà người dùng có thể học hỏi, vận hành, chuẩn bị dữ liệu đầu vào và sử dụng dữ liệu đầu ra từ hệ thống. Điều này đã được xác minh thông qua thử nghiệm khả năng sử dụng.
  6. Khả năng mở rộng: Mức độ mà một ứng dụng phần mềm có thể mở rộng khả năng xử lý để đáp ứng nhu cầu ngày càng tăng. Được xác minh thông qua Kiểm thử khả năng mở rộng.
  7. Khả năng tương tác: Kiểm tra cách một hệ thống phần mềm tương tác với các hệ thống phần mềm khác. Được xác minh thông qua Kiểm thử khả năng tương tác.
  8. Hiệu suất: Mức độ hệ thống xử lý dung lượng, số lượng và thời gian phản hồi dưới tải.
  9. Thích ứng với văn hoá: Ứng dụng này hoạt động dễ dàng trên nhiều cấu hình phần cứng và phần mềm khác nhau, chẳng hạn như dung lượng RAM hoặc thông số CPU khác nhau.
  10. Tính di động: Tính linh hoạt của phần mềm trong việc chuyển đổi từ môi trường phần cứng hoặc phần mềm hiện tại sang môi trường khác.
  11. Khả năng tái sử dụng: Thuật ngữ này đề cập đến phần của một hệ thống phần mềm có thể được điều chỉnh để sử dụng trong một ứng dụng khác.

Sơ đồ tham số kiểm thử phi chức năng

Loại kiểm thử phần mềm

Kiểm thử phần mềm được phân loại rộng rãi thành ba loại:

  • Thử nghiệm chức năng
  • Kiểm tra phi chức năng
  • Kiểm tra bảo trì

Mỗi danh mục bao gồm nhiều cấp độ kiểm thử, mà các nhóm thường gọi là các loại kiểm thử. Các sách và tài liệu tham khảo khác nhau có thể phân loại chúng hơi khác nhau, vì vậy hãy lưu ý rằng sẽ có những khác biệt nhỏ.

Danh sách các loại kiểm thử không phải là đầy đủ — có hơn 100 loại kiểm thử khác nhau và các loại mới vẫn tiếp tục xuất hiện. Không phải loại nào cũng phù hợp với mọi dự án; phạm vi phụ thuộc vào bản chất, mức độ rủi ro và độ phức tạp của ứng dụng cần kiểm thử.

Các loại kiểm tra phi chức năng

Các loại kiểm thử phi chức năng phổ biến nhất được thực hiện bởi các nhóm QA bao gồm:

  • Kiểm tra năng suất
  • Kiểm tra Tải
  • Kiểm tra chuyển đổi dự phòng
  • Kiểm tra khả năng tương thích
  • Kiểm tra khả năng sử dụng
  • Bài kiểm tra về áp lực
  • Kiểm tra khả năng bảo trì
  • Kiểm tra khả năng mở rộng
  • Kiểm tra khối lượng
  • Kiểm tra bảo mật
  • Thử nghiệm phục hồi sau thảm họa
  • Kiểm tra tuân thủ
  • Kiểm tra tính di động
  • Kiểm tra hiệu quả
  • Kiểm tra độ tin cậy
  • Kiểm tra cơ bản
  • Kiểm tra độ bền
  • Kiểm tra tài liệu
  • Kiểm tra phục hồi
  • Thử nghiệm quốc tế hóa

Ví dụ về các trường hợp kiểm thử phi chức năng

Các ví dụ sau đây minh họa cách viết các trường hợp kiểm thử phi chức năng trong các dự án thực tế:

Trường hợp thử nghiệm # Trường hợp thử nghiệm miền
1 Thời gian tải ứng dụng không được vượt quá 5 giây khi có tới 1000 người dùng truy cập đồng thời. Kiểm tra năng suất
2 Phần mềm phải có thể cài đặt được trên tất cả các phiên bản được hỗ trợ. Windows và macOS. Kiểm tra khả năng tương thích
3 Tất cả hình ảnh trên web nên có thẻ alt mô tả. Kiểm tra khả năng tiếp cận

Câu Hỏi Thường Gặp

Kiểm thử chức năng xác minh những gì hệ thống thực hiện so với các yêu cầu đã được chỉ định. Kiểm thử phi chức năng đo lường hiệu suất của hệ thống, bao gồm tốc độ, độ tin cậy, khả năng sử dụng và bảo mật, đảm bảo ứng dụng đáp ứng các tiêu chuẩn chất lượng vượt ra ngoài hành vi của các tính năng cốt lõi.

Các công cụ phổ biến bao gồm JMeter và LoadRunner để tối ưu hiệu năng. Selenium để tự động hóa khả năng sử dụng, Burp Suite và OWASP ZAP cho bảo mật, và BrowserStack cho khả năng tương thích. Mỗi công cụ nhắm vào một lĩnh vực phi chức năng cụ thể mà các nhóm QA muốn đo lường.

Kiểm thử phi chức năng nên bắt đầu khi hệ thống đã ổn định về mặt chức năng và trước khi phát hành các phiên bản chính. Các bài kiểm thử hiệu năng, bảo mật và độ tin cậy thường được lên kế hoạch thực hiện ở các giai đoạn kiểm thử muộn hơn, nhưng chiến lược "chuyển sang trái" thúc đẩy việc thực hiện sớm hơn, song song với quá trình phát triển.

Mỗi tham số được đo lường dựa trên các ngưỡng định lượng. Hiệu năng được đo bằng thời gian phản hồi và thông lượng, bảo mật thông qua số lượng lỗ hổng, khả năng sử dụng thông qua tỷ lệ hoàn thành tác vụ và độ tin cậy thông qua thời gian trung bình giữa các lần lỗi. Numbers Thay thế các ý kiến ​​chủ quan.

Cả hai. Kiểm thử hiệu năng, tải, độ bền và bảo mật phụ thuộc rất nhiều vào tự động hóa do quy mô và khả năng lặp lại. Kiểm thử khả năng sử dụng và khả năng tiếp cận thường yêu cầu quan sát thủ công, đánh giá của chuyên gia hoặc kiểm tra bằng công nghệ hỗ trợ cùng với các công cụ tự động.

Trí tuệ nhân tạo (AI) tạo ra hồ sơ tải, dự đoán các điểm nghẽn hiệu năng, ưu tiên các trường hợp kiểm thử rủi ro và tự động phân tích dữ liệu nhật ký. Các nền tảng dựa trên AI giúp giảm thời gian thực thi và phát hiện lỗi nhanh hơn.ping Các nhóm QA mở rộng phạm vi bao phủ các vấn đề phi chức năng trên các bản phát hành.

Không. AI giúp tăng tốc quá trình quét, tạo đường cơ sở và phát hiện bất thường, nhưng các chuyên gia kiểm thử vẫn diễn giải kết quả, xác thực chuỗi khai thác và thiết kế kịch bản kiểm thử. AI hỗ trợ phán đoán của con người trong kiểm thử phi chức năng chứ không phải thay thế các kỹ sư QA giàu kinh nghiệm.

Tóm tắt bài viết này với: