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

Kiểm thử hồi quy

Khi phần mềm được phát triển, sẽ có những thay đổi để phù hợp với hệ thống cũng như yêu cầu của khách hàng, các tính năng mới được tích hợp, do đó luôn có những phiên bản mới thay thế phiên bản cũ. Việc kiểm thử sẽ phải thực hiện lại và tốn nhiều thời gian. Trong trường hợp này, ta nên áp dụng Kiểm thử hồi quy - Regression Testing. Cùng tìm hiểu Kiểm thử hồi quy ở bài viết này nhé.

1. Kiểm thử hồi quy - Regression Testing là gì?

Kiểm thử hồi quy được định nghĩa là một loại kiểm thử phần mềm để xác nhận rằng một tính năng mới được thêm không ảnh hưởng xấu đến các tính năng hiện có.

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.

Kiểm thử hồi quy là kiểm thử lại các trường hợp đã được thực hiện để đảm bảo các chức năng hiện có hoạt động tốt.

Kiểm thử này được thực hiện để đảm bảo rằng những thay đổi source code mới sẽ không ảnh hưởng tới các chức năng hiện có, đảm bảo rằng code cũ vẫn hoạt động sau khi thực hiện thay đổi source code.

2. Tại sao cần kiểm thử hồi quy?

Kiểm thử hồi quy là cần thiết khi:

  • Thay đổi trong yêu cầu và source code được sửa đổi theo yêu cầu
  • Tính năng mới được thêm vào phần mềm
  • Sửa lỗi
  • Khắc phục sự cố hiệu suất

3. Cách thực hiện kiểm thử hồi quy

Bảo trì phần mềm là một hoạt động bao gồm cải tiến, sửa lỗi, tối ưu hóa và xóa các tính năng không phù hợp. Những sửa đổi này có thể khiến hệ thống hoạt động không chính xác. Do đó, Kiểm thử hồi quy trở nên cần thiết. Kiểm thử hồi quy có thể được thực hiện bằng các kỹ thuật sau:

kiem thu hoi quy 1 png

Kiểm thử lại tất cả

Đây là một trong những phương pháp để Kiểm thử hồi quy trong đó tất cả các test cases trong bộ kiểm thử hiện có sẽ được thực hiện lại. Sẽ rất tốn kém vì đòi hỏi thời gian và nguồn lực rất lớn.

Kiểm thử lại một phần

  • Thay vì thực hiện lại toàn bộ bộ kiểm thử, tốt hơn là chọn một phần của bộ kiểm thử sẽ được test lại.
  • Các test cases được chọn có thể được phân loại thành 1) Các test cases tái sử dụng 2) Các test cases loại bỏ.
  • Các test cases được sử dụng lại có thể được sử dụng trong các chu kỳ kiểm thử hồi quy kế tiếp.
  • Các test cases lỗi thời không thể được sử dụng trong các chu kỳ tiếp theo.

Dựa trên độ ưu tiên của các test cases

  • Độ ưu tiên của các test cases tùy thuộc vào tác động nghiệp vụ, các chức năng quan trọng và được sử dụng thường xuyên.
  • Lựa chọn các test cases dựa trên mức độ ưu tiên sẽ giảm đáng kể bộ kiểm thử hồi quy.

4. Lựa chọn test cases để kiểm thử hồi quy

Một số lượng lớn các lỗi được khách hàng báo cáo là do sửa lỗi vào phút cuối tạo ra các ảnh hưởng và do đó chọn Test Cases để kiểm thử hồi quy là không dễ dàng. Để kiểm thử hồi quy hiệu quả, nên chọn các Test Cases sau:

  • Các Test Cases có lỗi thường xuyên
  • Các chức năng người dùng dễ dàng nhìn thấy
  • Các Test Cases xác minh các tính năng cốt lõi của sản phẩm
  • Các Test Cases của Chức năng đã có nhiều thay đổi gần thời điểm thực hiện test
  • Tất cả Test Cases thử tích hợp
  • Tất cả các Test Cases phức tạp
  • Test Cases giá trị biên
  • Một mẫu Test Cases thành công
  • Một mẫu Test Cases Thất bại

5. Công cụ kiểm thử hồi quy

Nếu phần mềm của bạn trải qua những thay đổi thường xuyên, chi phí kiểm thử hồi quy sẽ leo thang.

Trong các trường hợp như vậy, việc thực hiện thủ công các Test Cases làm tăng thời gian thực hiện kiểm thử cũng như chi phí.

Tự động hóa các Test Cases hồi quy là sự lựa chọn thông minh trong các trường hợp như vậy.

Phạm vi tự động hóa phụ thuộc vào số lượng Test Cases có thể sử dụng lại cho các chu kỳ hồi quy kế tiếp.

Sau đây là các công cụ quan trọng nhất được sử dụng cho cả kiểm thử chức năng và hồi quy trong công nghệ phần mềm.

Selenium: Đây là một công cụ mã nguồn mở được sử dụng để tự động hóa các ứng dụng web. Selenium có thể được sử dụng để kiểm thử hồi quy dựa trên trình duyệt.

Quick Test Professional (QTP): HP Quick Test Professional là phần mềm tự động được thiết kế để tự động hóa các trường hợp kiểm thử chức năng và hồi quy. QTP sử dụng ngôn ngữ VBScript để tự động hóa. QTP là một công cụ dựa trên dữ liệu, dựa trên từ khóa.

Rational Functional Tester (RFT): RFT của IBM là một công cụ Java được sử dụng để tự động hóa các trường hợp kiểm thử của các ứng dụng phần mềm. Điều này chủ yếu được sử dụng để tự động hóa các trường hợp kiểm thử hồi quy và nó cũng tích hợp với Rational Test Manager.

6. Kiểm thử hồi quy và quản lý cấu hình

Quản lý cấu hình trong Kiểm thử hồi quy trở nên bắt buộc trong Môi trường Agile, nơi code đang được sửa đổi liên tục. Để đảm bảo kiểm thử hồi quy hiệu quả, hãy tuân thủ các điều sau:

Code được kiểm thử hồi quy phải theo một công cụ quản lý cấu hình

Không được phép thay đổi Code trong giai đoạn kiểm thử hồi quy. Code kiểm thử hồi quy phải được độc lập với những thay đổi của nhà phát triển.

Cơ sở dữ liệu được sử dụng để kiểm thử hồi quy phải được cách ly. Không được phép thay đổi cơ sở dữ liệu

7. Sự khác biệt giữa Kiểm thử lại (Re-Testing) và Kiểm thử hồi quy

Kiểm thử lại có nghĩa là kiểm thử lại chức năng hoặc lỗi để đảm bảo lỗi đã được sửa.

Kiểm thử hồi quy có nghĩa là kiểm thử ứng dụng phần mềm khi có trải qua thay đổi code để đảm bảo rằng code mới thay đổi không ảnh hưởng đến các phần khác của phần mềm.

8. Những khó khăn trong kiểm thử hồi quy

Sau đây là một số khó khăn khi thực hiện kiểm thử hồi quy:

  • Khi kiểm thử hồi quy liên tục được thực hiên, các bộ test cases trở nên khá lớn. Do hạn chế về thời gian và ngân sách, toàn bộ test cases kiểm thử hồi quy không thể được thực thi.
  • Tối thiểu hóa bộ test cases trong khi vẫn đạt được phạm vi kiểm thử tối đa vẫn là một thách thức
  • Xác định tần suất của Kiểm thử hồi quy, tức là sau mỗi lần sửa đổi hoặc mỗi lần cập nhật bản build hoặc sau một loạt các lỗi được sửa là một thách thức.

9. Kết luận

Một chiến lược kiểm thử hồi quy hiệu quả sẽ tiết kiệm cả thời gian và tiền bạc.

Theo những trường hợp nghiên cứu trong lĩnh vực ngân hàng, kiểm thử hồi quy tiết kiệm tới 60% thời gian trong việc sửa lỗi (có thể đã phát hiện bởi kiểm thử hồi quy) và 40% chi phí cho kiểm thử phần mềm.

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…

Phân biệt Smoke Testing và Sanity Testing

Phân biệt Smoke Testing và Sanity Testing

Smoke Testing là gì? Sanity testing là gì? Smoke Testing và Sanity Testing là những…

Top