Tìm hiểu về Non-functional testing (Phần 1)

Trong thử nghiệm phi chức năng, các đặc tính chất lượng của thành phần hoặc hệ thống được kiểm tra. Phi chức năng đề cập đến các khía cạnh của phần mềm có thể không liên quan đến một chức năng cụ thể hoặc hành động của người dùng như khả năng mở rộng hoặc bảo mật. Ví dụ: Có bao nhiêu người có thể đăng nhập cùng một lúc? Kiểm tra phi chức năng cũng được thực hiện ở tất cả các cấp như kiểm tra chức năng. Dưới đây là các loại kiểm thử phi chức năng:

1. Reliability Testing

  • Kiểm tra độ tin cậy là việc thực hiện một ứng dụng để các lỗi được phát hiện và loại bỏ trước khi hệ thống được triển khai. Mục đích của kiểm tra độ tin cậy là xác định độ tin cậy của sản phẩm và để xác định xem phần mềm có đáp ứng các yêu cầu về độ tin cậy của khách hàng hay không.

  • Độ tin cậy của phần mềm là xác suất hoạt động của phần mềm không có lỗi trong một khoảng thời gian xác định trong một môi trường được chỉ định. Độ tin cậy của phần mềm cũng là một yếu tố quan trọng ảnh hưởng đến độ tin cậy của hệ thống.

  • Kiểm tra độ tin cậy sẽ có xu hướng phát hiện sớm hơn những lỗi có khả năng xảy ra trong hoạt động thực tế, do đó có thể đưa ra các hướng khắc phục các lỗi quan trọng nhất.

  • Kiểm tra độ tin cậy có thể được thực hiện ở nhiều cấp độ. Các hệ thống phức tạp có thể được kiểm tra ở cấp độ thành phần, bảng mạch, đơn vị, lắp ráp, hệ thống con và hệ thống.

2. Usability testing

  • Kiểm thử khả năng sử dụng là việc kiểm tra xem ứng dụng hoặc sản phẩm được xây dựng có thân thiện với người dùng hay không.
  • Usability Testing là kỹ thuật kiểm thử hộp đen
  • Kiểm thử khả năng sử dụng cũng cho thấy người dùng có cảm thấy thoải mái với ứng dụng hoặc trang web theo các thông số khác nhau: lưu lượng, điều hướng và bố cục, tốc độ và nội dung, đặc biệt là so với các ứng dụng trước hoặc tương tự.
  • Kiểm thử khả năng sử dụng là kiểm thử các tính năng sau của phần mềm:
  1. Làm thế nào dễ dàng để sử dụng phần mềm
  2. Làm thế nào dễ dàng để tìm hiểu phần mềm.
  3. Phần mềm tiện lợi như thế nào đối với người dùng cuối.
  • Lợi ích của việc kiểm tra khả năng sử dụng cho người dùng cuối hoặc khách hàng:
  1. Phần mềm chất lượng tốt hơn
  2. Phần mềm dễ sử dụng hơn
  3. Phần mềm được người dùng chấp nhận hơn
  4. Rút ngắn thời gian học tập cho người dùng mới
  • Kiểm thử khả năng sử dụng bao gồm năm thành phần sau đây:
  1. Khả năng học hỏi: Người dùng dễ dàng hoàn thành các tác vụ cơ bản như thế nào khi lần đầu tiên bắt gặp ứng dụng?
  2. Hiệu quả: Làm thế nào để người dùng có thể nhanh chóng hoàn thành nhiệm vụ?
  3. Khả năng ghi nhớ: Khi người dùng quay trở lại ứng dụng sau một thời gian không sử dụng, liệu người dùng có nhớ đủ để sử dụng nó hiệu quả vào lần tiếp theo hay người dùng phải bắt đầu lại việc học mọi thứ?
  4. Lỗi: Có bao nhiêu lỗi người dùng mắc phải, các lỗi này nghiêm trọng đến mức nào và họ có thể phục hồi dễ dàng như thế nào từ các lỗi?
  5. Sự hài lòng: Người dùng thích sử dụng hệ thống đến mức nào?

3. Efficiency testing

  • Phương pháp Efficiency testing sẽ kiểm tra số lượng code và các nguồn tài nguyên testing được yêu cầu bởi 1 chương trình để thực hiện một chức năng cụ thể nào đó. Software test efficiency là số lượng của các test case được thực hiện trên 1 đơn vị thời gian (thông thường là mỗi giờ).
  • Dưới đây là một số công thức để tính Hiệu suất Kiểm thử Phần mềm (cho các yếu tố khác nhau):

Hiệu quả kiểm tra = (tổng số lỗi được tìm thấy trong đơn vị + tích hợp + hệ thống) / (tổng số lỗi được tìm thấy trong đơn vị + tích hợp + hệ thống + Kiểm tra chấp nhận của người dùng)

Kiểm tra hiệu quả = (Số lỗi được giải quyết / Tổng số lỗi được gửi) * 100

  • Hiệu quả kiểm thử phần mềm bao gồm ba khía cạnh:
  1. Bao nhiêu yêu cầu của khách hàng mà hệ thống có thể đáp ứng hài lòng.
  2. Hệ thống làm tốt các thông số kỹ thuật của khách hàng như thế nào.
  3. Bao nhiêu nỗ lực được đưa vào phát triển hệ thống.

4. Maintainability testing

  • Về cơ bản nó định nghĩa rằng việc bảo trì hệ thống cách dễ dàng. Điều này có nghĩa là việc phân tích, thay đổi và kiểm tra ứng dụng hoặc sản phẩm một cách dễ dàng.
  • Kiểm tra khả năng bảo trì sẽ sử dụng một mô hình về các yêu cầu bảo trì của phần mềm / hệ thống. Thử nghiệm khả năng bảo trì phải được chỉ định theo các nỗ lực cần thiết để thực hiện thay đổi theo từng loại trong bốn loại sau:
  1. Bảo trì khắc phục (Khắc phục sự cố): Khả năng duy trì của một hệ thống có thể được đo lường theo thời gian thực hiện để chẩn đoán và khắc phục các sự cố được xác định trong hệ thống đó.
  2. Bảo trì hoàn hảo (Cải tiến): Khả năng duy trì của một hệ thống cũng có thể được đo lường bằng nỗ lực thực hiện để cải tiến cần thiết cho hệ thống đó. Điều này có thể được kiểm tra bằng cách ghi lại thời gian thực hiện để đạt được một phần mới của chức năng nhận dạng, chẳng hạn như thay đổi cơ sở dữ liệu, v.v. Một số thử nghiệm tương tự nên được chạy và tính thời gian trung bình. Kết quả sẽ là có thể đưa ra một nỗ lực (effort) trung bình cần thiết để thực hiện chức năng được chỉ định. Điều này có thể được so sánh với nỗ lực mục tiêu và đánh giá về việc liệu các yêu cầu có được đáp ứng hay không.
  3. Bảo trì thích ứng: Thích ứng với những thay đổi trong môi trường. Khả năng duy trì của một hệ thống cũng có thể được đo lường bằng các nỗ lực (effort) cần thiết để thực hiện các điều chỉnh cần thiết cho hệ thống đó. Điều này có thể được đo lường theo cách được mô tả ở trên để kiểm tra khả năng bảo trì hoàn hảo.
  4. Bảo trì phòng ngừa: Các hành động để giảm chi phí bảo trì trong tương lai

5. Portability testing

  • Kiểm thử tính di động là việc kiểm thử một thành phần hoặc ứng dụng phần mềm máy tính có thể được chuyển từ môi trường này sang môi trường khác, ví dụ: chuyển bất kỳ ứng dụng nào từ Windows 7 sang Windows 10.
  • Kiểm thử tính di động bao gồm các loại kiểm thử sau:
  1. Khả năng cài đặt: Kiểm tra khả năng cài đặt được tiến hành trên phần mềm được sử dụng để cài đặt phần mềm khác trên môi trường đích của nó.
  2. Đồng tồn tại hoặc tương thích: Đồng tồn tại là sản phẩm phần mềm có khả năng cùng tồn tại với các sản phẩm phần mềm độc lập khác trong một môi trường chung chia sẻ tài nguyên chung.
  3. Khả năng thích ứng: Khả năng thích ứng là khả năng của sản phẩm phần mềm thích ứng với các môi trường được chỉ định khác nhau mà không áp dụng các hành động hoặc phương tiện khác ngoài các hành động được cung cấp cho mục đích này cho hệ thống.
  4. Khả năng thay thế: là khả năng của sản phẩm được sử dụng thay cho một sản phẩm được chỉ định khác cho cùng mục đích trong cùng một môi trường.

6. Baseline testing

  • Baseline testing là phương pháp kiểm thử mà tham chiếu đến các tài liệu validation và các tài liệu đặc tả mà được mô tả trong các test cases. Validation tài liệu đặc tả chính là baseline testing.
  • Kiểm thử này tạo cơ sở cho các thử nghiệm khác để so sánh hiệu suất của một ứng dụng mới hoặc ứng dụng chưa biết với một tiêu chuẩn tham chiếu đã biết. Ví dụ: nếu một ứng dụng cụ thể được biết là mang lại hiệu suất tốt cho ít nhất 1000 người dùng tại một thời điểm cụ thể, thì đường cơ sở có thể là 1000 người dùng. Vì vậy, một ứng dụng mới sẽ hoạt động hoàn hảo cho tối thiểu 1000 người dùng.
  • Thử nghiệm này đo lường các đặc điểm và yêu cầu quan trọng. Một điểm chuẩn là về việc phân tích hiệu suất tương đối của một ứng dụng. Nếu ứng dụng thực hiện dưới đường cơ sở nhất định, thì nó được coi là bị hỏng. Với mỗi bản dựng, thử nghiệm này được chạy và tất cả các đặc tính quan trọng được so sánh để giúp giải quyết các vấn đề.
  • Loại thử nghiệm này có thể không liên quan đến một chức năng cụ thể vì nó tập trung vào các đặc tính chất lượng của ứng dụng.

Kết luận

Trên đây là những chia sẻ về các loại kiểm thử phi chức năng (P1) mong có thể giúp ích cho mọi người

Nguồn: http://tryqa.com/what-is-non-functional-testing-testing-of-software-product-characteristics/


All Rights Reserved