Giới thiệu về kiểm thử phi chức năng

Các loại kiểm thử phần mềm

Functional: Kiểm thử chức năng
Non - Functional: Kiểm thử phi chức năng
Maintenance: Bảo trì

Trong bài viết này mình xin tập trung giới thiệu về kiểm thử phi chức năng (non-functional)

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

Kiểm thử phi chức năng (non-functional) được định nghĩa là một loại kiểm thử phần mềm để kiểm tra các khía cạnh phi chức năng (hiệu suất, khả năng sử dụng, độ tin cậy, v.v.) của ứng dụng phần mềm. Nó được thiết kế để kiểm tra sự sẵn sàng của một hệ thống theo các tham số không thuộc về chức năng và không bao giờ được giải quyết bằng kiểm thử chức năng.

Một ví dụ về kiểm thử phi chức năng đó là kiểm tra xem có bao nhiêu người có thể đăng nhập đồng thời vào một hệ thống phần mềm.

Kiểm thử phi chức năng cũng quan trọng không kém như kiểm thử chức năng và ảnh hưởng đến sự hài lòng của khách hàng.

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

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

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

  • Kiểm thử phi chức năng nên được đo lường, vì vậy không có chỗ cho đặc tính chủ quan như tốt, tốt hơn, tốt nhất, v.v.
  • Số chính xác không có khả năng được biết khi bắt đầu quá trình yêu cầu.
  • Quan trọng để ưu tiên các yêu cầu.
  • Đảm bảo rằng các thuộc tính chất lượng được xác định chính xác trong Kỹ thuật phần mềm.

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

1. Security (Bảo mật): Tham số xác định cách hệ thống được bảo vệ an toàn trước các cuộc tấn công có chủ ý và đột ngột từ các nguồn bên trong và bên ngoài.
2. Reliability (Độ tin cậy): Mức độ mà bất kỳ hệ thống phần mềm nào liên tục thực hiện các chức năng được chỉ định mà không gặp sự cố.
3. Survivability (Khả năng sống sót): Tham số kiểm tra rằng hệ thống phần mềm tiếp tục hoạt động và tự phục hồi trong trường hợp lỗi hệ thống.
4. Availability (Tính sẵn có): Tham số xác định mức độ mà người dùng có thể phụ thuộc vào hệ thống trong quá trình hoạt động.
5. Usability (Khả năng sử dụng): Người dùng có thể dễ dàng học hỏi, vận hành, chuẩn bị đầu vào và đầu ra thông qua tương tác với một hệ thống.
6. Scalability (Khả năng mở rộng): Thuật ngữ này đề cập đến mức độ mà bất kỳ ứng dụng phần mềm nào cũng có thể mở rộng khả năng xử lý của nó để đáp ứng nhu cầu gia tăng.
7. Interoperability (Khả năng tương tác): Tham số phi chức năng này kiểm tra giao diện hệ thống phần mềm với các hệ thống phần mềm khác.
8. Efficiency (Tính hiệu quả): Mức độ mà bất kỳ hệ thống phần mềm nào cũng có thể xử lý dung lượng, số lượng và thời gian đáp ứng.
9. Flexibility (Tính linh hoạt): Thuật ngữ này đề cập đến sự dễ dàng mà ứng dụng có thể hoạt động trong các cấu hình phần cứng và phần mềm khác nhau. Giống như RAM tối thiểu, yêu cầu CPU.
10. Portability (Tính di động): Tính linh hoạt của phần mềm để chuyển từ môi trường phần cứng hoặc phần mềm hiện tại của nó.
11. Reusability (Tái sử dụng): Nó đề cập đến một phần của hệ thống phần mềm có thể được chuyển đổi để sử dụng trong một ứng dụng khác.

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

  • Performance Testing (Kiểm thử hiệu năng)
  • Load Testing (Kiểm thử tải)
  • Failover Testing (Kiểm thử chuyển đổi dự phòng)
  • Compatibility Testing (Kiểm thử tương thích)
  • Usability Testing (Kiểm thử khả năng sử dụng)
  • Stress Testing (Kiểm thử về áp lực)
  • Maintainability Testing (Kiểm thử bảo trì)
  • Scalability Testing (Kiểm thử khả năng mở rộng)
  • Volume Testing (Kiểm thử khối lượng)
  • Security Testing (Kiểm thử bảo mật)
  • Disaster Recovery Testing (Kiểm thử khắc phục thảm họa)
  • Compliance Testing (Kiểm thử tuân thủ)
  • Portability Testing (Kiểm thử tính di động)
  • Efficiency Testing (Kiểm thử hiệu quả)
  • Reliability Testing (Kiểm thử độ tin cậy)
  • Baseline Testing (Kiểm thử cơ bản)
  • Endurance Testing (Kiểm thử độ bền)
  • Documentation Testing (Kiểm thử tài liệu)
  • Recovery Testing (Kiểm thử phục hồi)
  • Internationalization Testing (Kiểm thử quốc tế hóa)
  • Localization Testing (Kiểm thử nội địa hóa)

Trong những bài viết sau, mình sẽ giới thiệu kĩ hơn về các thông số của kiểm thử phi chức năng và một số loại kiểm thử phi chức năng. Cảm ơn các bạn đã đọc!

Tài liệu tham khảo: https://www.guru99.com/non-functional-testing.html