Kiểm thử hồi quy
1. Định nghĩa
Kiểm thử hồi quy (regression testing) được định nghĩa là một loại kiểm thử phần mềm để xác nhận rằng chương trình hiện tại hoặc những thay đổi code gần đây không làm ảnh hưởng đến các tính năng hiện có. Nó đảm bảo rằng code cũ vẫn hoạt động sau khi các thay đổi code mới nhất được thực hiện.
Kiểm thử hồi quy sẽ chọn ra toàn bộ hoặc một phần các trường hợp kiểm thử đã được thực thi để thực thi lại, đảm bảo các chức năng hiện có hoạt động tốt.
2. Khi nào áp dụng kiểm thử hồi quy
Khi có yêu cầu thay đổi code.
Khi một tính năng mới được thêm vào ứng dụng phần mềm.
3. Cách thức thực hiện kiểm thử hồi quy
Cách thức thực hiện kiểm thử hồi quy chính là chọn ra các test case có liên quan bao gồm các phần đã sửa đổi và phần bị ảnh hưởng, từ bộ test case của hệ thống.
Kiểm thử hồi quy có thể được thực hiện bằng cách sử dụng các kỹ thuật sau:
Retest All – test lại toàn bộ các trường hợp kiểm thử.
Kỹ thuật này rất tốn kém vì nó đòi hỏi thời gian và nguồn lực lớn để thực hiện lại toàn bộ các trường hợp kiểm thử.
Regression Test Selection – kiểm thử hồi quy có chọn lọc.
Là kỹ thuật trong chọn các test case từ bộ test đã được thực thi, để kiểm tra xem liệu code đã sửa đổi có ảnh hưởng đến ứng dụng phần mềm hay không.
Các test case chọn lựa này được phân loại thành hai phần:
Các test case có thể tái sử dụng lại, có thể được sử dụng trong các chu kỳ hồi quy tiếp theo.
Các test case đã lỗi thời, không thể sử dụng trong các chu kỳ tiếp theo.
Prioritization of Test Cases – Ưu tiên các test case
Việc ưu tiên các test case tùy thuộc vào sự tác động của nghiệp vụ, mức độ quan trọng của chức năng và tần suất sử dụng chức năng đó. Việc lựa chọn các test case dựa trên mức độ ưu tiên sẽ làm giảm đáng kể bộ test của kiểm thử hồi quy.
Lựa chọn các test case cho việc kiểm thử hồi quy
Việc lựa chọn các test case để thực hiện kiểm thử hồi quy là một nghệ thuật và không hề dễ dàng. Kiểm thử hồi quy hiệu quả có thể được thực hiện bằng cách chọn các test case như sau:
Các test case thường xuyên phát hiện ra lỗi.
Các chức năng hiển thị nhiều đối với người dùng.
Các test case xác nhận các tính năng chính của sản phẩm.
Các test case của các chức năng gần đây đã có nhiều thay đổi.
Tất cả các test case tích hợp.
Tất cả các test case phức tạp.
Các test case kiểm tra giá trị biên.
Một tập mẫu các test case pass.
Một tập mẫu các test case fail.
4. Công cụ kiểm thử hồi quy
Nếu phần mềm của bạn thường xuyên thay đổi, chi phí cho kiểm thử hồi quy sẽ tăng lên. Trong những trường hợp như vậy, việc thực hiện thủ công các trường hợp kiểm thử sẽ 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 trường hợp kiểm thử hồi quy là sự lựa chọn thông minh trong những trường hợp như vậy. Một số 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 là: Ranorex Studio, Selenium, Quick Test Professional, trình kiểm tra chức năng hợp lý RFT.
5. Một số kinh nghiệm khi thực hiện kiểm thử hồi quy
Đối với chức năng mới
Xác định vùng ảnh hưởng (các tính năng/chức năng ảnh hưởng). Từ đó xác định, lựa chọn ra các test case trong bộ test case của chức năng đó để thực hiện kiểm thử hồi quy.
Đối với các bug mới fixed
Nhờ các bạn developer note lại thông tin: nguyên nhân xảy ra bug, solution cho việc fix bug và các vùng ảnh hưởng sau khi fix bug. Từ đó lựa chọn ra bộ test case mà mình nghĩ là có ảnh hưởng để thực hiện test.
Link tham khảo: https://www.guru99.com/regression-testing.html.