
Smoke Testing và Sanity Testing: Chìa khóa khác biệt
Là một kỹ thuật test giúp verify được các chức năng(function) quan trọng của hệ thống làm việc đúng theo requirement. Kỹ thuật này được thực hiện trước khi việc test chi tiết từng function hay là test hồi quy.
Mục đích chính của Smoke Testing là reject những phần mềm mà có quá nhiều lỗi nghiêm trọng, giúp Tester/QA team không lãng phí thời gian và công sức cho một phần mềm “tệ”.
Trong Smoke Testing, Testcase sẽ được chọn lọc để có thể cover được những function hoặc component quan trọng của hệ thống. Mục đích không phải là test toàn diện(tìm bugs) mà là đảm bảo rằng các function đang hoạt động đúng. Ví dụ, các testcase đặc trưng của Smoke Testing sẽ là: Verify hệ thống chạy thành công, Check responsive của GUI,..v.v
Ưu điểm của Smoke Testing
Nhược điểm của Smoke Testing
Là một kỹ thuật test ngay sau khi thực hiện build/deploy phần mềm, test đến những thay đổi nhỏ của code hoặc function, hay verify rằng bugs đã được fix hoặc không có vấn đề gì bị thay đổi sau khi thực hiện fix bug.
Mục đích của Sanity Testing là detect rằng các chức năng của hệ thống hoạt động như mong đợi. Nếu Sanity testcase là Fail/NG, thì chức năng đó sẽ bị reject để tiết kiệm thời gian và chi phí, đồng thời để cải tiến và chỉnh sửa sản phẩm.
Đối với Sanity Testing, mục tiêu không phải là việc verify một cách kỹ lưỡng các function mới mà là xác định rằng việc Developer đã áp dụng các tính hợp lí trong xây dựng phần mềm.
Ưu điểm của Sanity Testing
Nhược điểm của Sanity Testing
Smoke Testing | Sanity Testing |
---|---|
Smoke Testing là kỹ thuật test để verify rằng các function chính của hệ thống đang hoạt động đúng | Sanity Testing được thực hiện để check new function hoặc bugs đã được fix |
Mục đích của kỹ thuật test này là để verify tính “ổn định” của hệ thống để tiến hành các kiểm thử mang tính nghiêm ngặt hơn | Mục đích của kỹ thuật test này là để verify tính”hợp lý” của hệ thống để tiến hành các kiểm thử mang tính nghiêm ngặt hơn |
Được thực hiện bởi Developer và Tester | Thường được thực hiện bởi Tester |
Thường có tài liệu và script | Thường không có tài liệu và script |
Smoke Testing là subset của Acceptance Testing | Sanity Testing là subset của Regression Testing |
Kiểm tra hệ thống từ đầu đến cuối | Kiểm tra các phần cụ thể của hệ thống |
Smoke Testing giống như Khám Sức khỏe tổng quát | Sanity Testing giống như Khám Sức khỏe chuyên khoa |
Chú ý:
Sanity Testing
và Smoke Testing
là những cách để tránh lãng phí thời gian và công sức bằng cách nhanh chóng xác định xem một ứng dụng có quá sai sót để thực hiện bất kỳ thử nghiệm nghiêm ngặt nào hay không.Manually Testing
hoặc Automation Tool
. Khi sử dụng Automation Tool, việc test thường được bắt đầu bởi cùng một quá trình tạo ra chính bản build/deploy