TESTING FUNDAMENTALS
TYPES OF TESTING
TESTCASE DEVELOPMENT
TESTING TECHNIQUES
TEST MANAGEMENT & CONTROL
DEFECTS
AGILE
TESTING DIFFERENT DOMAINS
WHITEBOX TESTING
PERFORMANCE TESTING
ADVANCE TESTING TOPICS
FAQ
TESTING TYPES - MEGA LIST
TOOLS
CHECK!
CERTIFICATION
LIVE TESTING PROJECT
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

7 nguyên lý trong kiểm thử phần mềm

Bài viết này giới thiệu bảy nguyên lý cơ bản của Kiểm thử phần mềm mà tất cả những kiểm thử viên tester nên biết.

Đạt được kết quả kiểm thử tối ưu trong khi tiến hành kiểm thử phần mềm mà không đi lệch khỏi mục tiêu là điều cực kì quan trọng, làm thế nào để xác định rằng bạn đang theo đúng chiến lược kiểm thử? Để làm được điều đó, bạn cần tuân thủ một số nguyên lý kiểm thử cơ bản. Dưới đây là bảy nguyên lý kiểm thử phổ biến được áp dụng rộng rãi trong ngành công nghiệp phần mềm.

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

1) Kiểm thử tất cả là không thể

Đúng! Kiểm thử tất cả là không thể. Thay vào đó, chúng ta cần chọn thực thi những loại kiểm thử quan trọng nhất dựa trên phân tích rủi ro cũng như tầm quan trọng và độ ưu tiên của việc kiểm thử.

Vậy, làm thế nào để bạn xác định rủi ro?

Theo bạn, hành động nào có khả năng khiến hệ điều hành bị lỗi?

Chắc chắn hầu hết các bạn sẽ trả lời: Mở tất cả 10 ứng dụng khác nhau cùng một lúc.

Vì vậy, nếu bạn đang kiểm thử Hệ điều hành, bạn sẽ nhận ra rằng các lỗi có thể được tìm thấy trong hoạt động đa tác vụ và cần phải được kiểm thử kỹ lưỡng, điều này đưa chúng ta đến nguyên lý tiếp theo.

2) Cụm lỗi

Trong quá trình kiểm thử, chúng ta sẽ có thể dễ dàng quan sát thấy đa phần những lỗi tìm được thường chỉ liên quan đến một vài tính năng của hệ thống. Điều này cũng thuận theo nguyên lý Pareto: 80% số lượng lỗi được tìm thấy trong 20% tính năng của hệ thống.

Theo kinh nghiệm, bạn có thể xác định các mô-đun rủi ro. Nhưng phương pháp này cũng có vấn đề: Nếu lặp đi lặp lại nhiều lần các trường hợp kiểm thử tương tự nhau sẽ không còn tìm thấy các lỗi mới.

3) Nghịch lý thuốc trừ sâu

Việc sử dụng lặp đi lặp lại cùng một loại thuốc trừ sâu để diệt côn trùng sẽ theo thời gian dẫn đến việc côn trùng phát triển tính kháng thuốc trừ sâu. Do đó, dùng thuốc trừ sâu để tiêu diệt côn trùng sẽ không còn hiệu quả. Áp dụng tương tự trong kiểm thử phần mềm. Nếu một bộ test cases được thực hiện lặp đi lặp lại nhiều lần sẽ không còn ý nghĩa trong việc phát hiện ra các lỗi mới.

Để khắc phục điều này, các test cases cần phải được reviewed và sửa đổi thường xuyên, thêm các test cases mới để giúp tìm ra nhiều lỗi hơn.

Testers phải liên tục cải thiện các phương pháp hiện có để kiểm thử được hiệu quả hơn. Nhưng ngay cả sau quá trình kiểm thử tốn nhiều công sức và thời gian, bạn không thể khẳng định sản phẩm của mình không có lỗi.

4) Kiểm thử chứng minh sự hiện diện của lỗi.

Kiểm thử chỉ chứng minh được sự hiện diện của lỗi và không thể chứng minh được sản phẩn không còn lỗi. Tức là Kiểm thử phần mềm làm giảm xác suất lỗi chưa được phát hiện trong phần mềm ngay cả khi không tìm thấy lỗi.

Nếu bạn chăm chỉ hơn, thực hiện mọi biện pháp phòng ngừa lỗi và làm cho sản phẩm phần mềm của bạn 99% không có lỗi. Và phần mềm không đáp ứng nhu cầu & yêu cầu của khách hàng. Điều này dẫn chúng ta đến nguyên lý tiếp theo, sự vắng mặt của Lỗi.

5) Sự vắng mặt của Lỗi

Có thể phần mềm không có lỗi 99% vẫn không được sử dụng nếu hệ thống được kiểm tra kỹ lưỡng nhưng sai yêu cầu. Kiểm thử phần mềm không chỉ đơn thuần là tìm lỗi, mà còn để kiểm tra xem phần mềm có đáp ứng nhu cầu của người dung hay không. Sự vắng mặt của lỗi là sai lầm, tức là việc tìm và sửa lỗi không giúp ích gì nếu việc xây dựng hệ thống không sử dụng được và không đáp ứng nhu cầu & yêu cầu của người dùng.

Để giải quyết vấn đề này, cần thực hiện nguyên lý thử nghiệm tiếp theo: Kiểm thử sớm

6) Kiểm thử sớm

Kiểm thử nên bắt đầu sớm nhất có thể trong Vòng đời phát triển phần mềm. Vì vậy, bất kỳ lỗi nào trong các yêu cầu hoặc giai đoạn thiết kế được phát hiện trong giai đoạn đầu sẽ rẻ hơn nhiều để sửa chữa. Nhưng kiểm thử sớm bằng cách nào? Bạn nên bắt đầu tìm lỗi ngay khi yêu cầu được xác định.

7) Kiểm thử phụ thuộc vào ngữ cảnh

Kiểm thử phụ thuộc vào ngữ cảnh về cơ bản có nghĩa là cách bạn kiểm thử trang web thương mại điện tử sẽ khác với cách bạn kiểm thử một ứng dụng di đông. Tất cả các phần mềm được phát triển theo cách khác nhau. Bạn có thể sử dụng một hướng tiếp cận, phương pháp, kỹ thuật và loại thử nghiệm khác nhau tùy thuộc vào loại ứng dụng.

Cùng chuyên mục:

Giám sát và kiểm soát kiểm thử

Giám sát và kiểm soát kiểm thử

Trong khi nhóm thực hiện các nhiệm vụ được giao, Test Manager cần giám sát…

Tài liệu kiểm thử

Tài liệu kiểm thử

Tài liệu kiểm thử giúp nhóm kiểm thử ước tính effort kiểm thử cần thiết,…

Cách tạo Test Plan

Cách tạo Test Plan

Test Plan là một tài liệu chi tiết mô tả chiến lược kiểm thử, Mục…

Tổ chức nhóm kiểm thử

Tổ chức nhóm kiểm thử

Tổ chức nhóm kiểm thử là một trong những nhiệm vụ phức tạp nhất trong…

Phân tích rủi ro dự án và giải pháp trong quản lý kiểm thử

Phân tích rủi ro dự án và giải pháp trong quản lý kiểm thử

Khi thực hiện dự án, luôn có những rủi ro tiềm ẩn. Để giảm thiểu…

Quy trình quản lý kiểm thử

Quy trình quản lý kiểm thử

Quản lý kiểm thử (Test Management) bao gồm chuỗi nhiều hoạt động. Có hai phần…

Vai trò và Trách nhiệm của Test Manager

Vai trò và Trách nhiệm của Test Manager

Trước khi bắt đầu kiểm thử một dự án, bạn nên biết vai trò của…

Kiểm thử Use Case

Kiểm thử Use Case

Là một tester, bạn đã hiểu rõ về Use Case hay Kiểm thử Use Case…

Kỹ thuật kiểm thử chuyển đổi trạng thái

Kỹ thuật kiểm thử chuyển đổi trạng thái

Chuyển đổi trạng thái (State Transition) trong kiểm thử là gì? Khi nào sử dụng…

Kỹ thuật kiểm thử bảng quyết định

Kỹ thuật kiểm thử bảng quyết định

Bảng quyết định là một trong những kỹ thuật kiểm thử phầm mềm. Vậy Kiểm…

Kỹ thuật Phân tích giá trị biên và phân vùng tương đương

Kỹ thuật Phân tích giá trị biên và phân vùng tương đương

Chúng ta cần sử dụng các kỹ thuật đặc biệt để lựa chọn test cases…

Kỹ thuật kiểm thử phần mềm

Kỹ thuật kiểm thử phần mềm

Kỹ thuật kiểm thử giúp giảm số lượng các test cases được thực hiện trong…

Test Case Template

Test Case Template

Test cases là đơn vị nhỏ nhất trong kế hoạch kểm thử, mô tả các…

Thủ thuật để tạo dữ liệu kiểm thử

Thủ thuật để tạo dữ liệu kiểm thử

Data được sử dụng trong kiểm thử mô tả các điều kiện tiền đề của…

Cách tạo Requirements Traceability Matrix - RTM

Cách tạo Requirements Traceability Matrix - RTM

Requirements Traceability Matrix - RTM là gì? Traceability Test Matrix bao gồm những loại nào?…

Cơ sở kiểm thử - Test basis

Cơ sở kiểm thử - Test basis

Cơ sở kiểm thử - Test Basis là nguồn để tạo ra các test cases.…

Cách viết Test Cases

Cách viết Test Cases

Test Case là tập hợp các hành động được thực thi để xác minh một…

Kịch bản kiểm thử - Test Scenario

Kịch bản kiểm thử - Test Scenario

Test Scenario tuy không còn mới mẻ nhưng không ít người còn mơ hồ về…

Kiểm thử phi chức năng

Kiểm thử phi chức năng

Kiểm thử phi chức năng liên quan đến việc kiểm thử phần mềm từ những…

Kiểm thử hồi quy

Kiểm thử hồi quy

Kiểm thử hồi quy - Regression Testing rất quan trọng, đặc biệt là trong những…

Top