Trang chủ » Kiến thức » Sanity test là gì? Phân biệt Sanity testing và Smoke testing

Sanity test là gì? Phân biệt Sanity testing và Smoke testing

Admin

Trong quá trình kiểm thử phần mềm khi có sự thay đổi nào về tính năng thì Sanity test được các lập trình viên lựa chọn và sử dụng. Vậy Sanity test là gì? Những tính năng nổi trội và sự khác biệt so với Smoke testing là gì? Hãy cùng Daotaotester.com đi tìm đáp án cho vấn đề này trong bài viết dưới đây nhé!

Sanity test

Sanity test là gì?

  • Sanity test là một loại kỹ thuật kiểm thử trong đó các Tester sẽ tiến hành kiểm tra các chức năng mới thêm. Cùng bug đã hoàn chỉnh trên hệ thống và tập trung vào một hoặc vài vùng chứ không phải toàn bộ hệ thống.
  • Loại kiểm thử này được thực hiện sau khi có được bản build với những sự thay đổi nhỏ trong code hoặc chức năng. Để chắc chắn các lỗi được khắc phục và không lỗi phát sinh do những thay đổi này. Đồng thời mục tiêu là xác định rằng lập trình viên đã sử dụng các tính toán hợp lý khi code.
  • Mục đích của việc thực hiện Sanity test đó là đảm bảo chức năng của phần mềm hoạt động đúng như mong đợi. Nếu kiểm tra không thành công thì bản Build sẽ bị từ chối và Tester sẽ cần phải reject lại.
  • Nó được thực thi khi nhóm phát triển cần biết nhanh trạng thái của sản phẩm sau khi cập nhật có bị lỗi nghiêm trọng hay không. Hoặc thời gian rất ít để thực hiện đầy đủ bộ regression test.

Sanity test

Đặc điểm nổi bật của Sanity test

  • Đây là một loại kiểm thử theo phương pháp tiếp cận hẹp và sâu khi tập trung vào một số tính năng hạn chế.
  • Ở Sanity testing thì các kiểm thử viên sẽ tiến hành xác thực các câu lênh, chức năng cùng tất cả menu của sản phẩm.
  • Là một tập hợp con của regression testing và nó được tiến hành khi không có đủ thời gian để kiểm thử chi tiết vì vậy Sanity test sẽ không có script.
  • Nó là quick test nhằm mục đích đảm bảo rằng mọi sự thay đổi hoạt động đúng như tài liệu đặc tả và mong đợi.
  • Có khả năng check minor bug được fix cùng các chức năng thay đổi hoạt động chuẩn xác. Đồng thời đảm bảo các chức năng liên quan không gặp vấn đề gì.

Sanity test

Ưu, nhược điểm của Sanity test

Ưu điểm

  • Khi sử dụng kỹ thuật kiểm thử này sẽ giúp bạn tối ưu được thời gian và công sức bởi nó sẽ tập trung vào một hoặc vài chức năng chứ không phải toàn bộ hệ thống.
  • Bạn sẽ không cần phải nỗ lực đưa nó vào trong tài liệu vì nó không được ghi.
  • Nó có khả năng xác định các đối tượng thiếu phụ thuộc. Đồng thời được áp dụng để xác thực chức năng nhỏ của phần mềm hoặc ứng dụng vẫn hoạt động đúng khi có sự update.

Sanity test

Nhược điểm

  • Dù giúp nhóm phát triển tiết kiệm thời gian nhưng nó tập trung vào các câu lệnh cùng function của phần mềm.
  • Các lập trình viên rất khó có thể hiểu được cách khắc phục các lỗi được tìm thấy trong Sanity test.
  • Ở Sanity testing thì việc kiểm tra được tiến hành cho một vài chức năng hạn chế. Do đó nếu có bất cứ vấn đề gì xảy ra với các chức năng khác thì rất khó để phất hiện và sửa lỗi.
  • Không có tài liệu tham khảo cho tương lại bởi quá trình diễn ra kỹ thuật kiểm thử này không được ghi chép lại.

Sanity test

Tìm hiểu về Smoke Testing

Định nghĩa

  • Smoke Testing còn được gọi là Build Verification testing là loại kiểm thử phần mềm nhằm đảm bảo các chức năng chính của ứng dụng hoạt động tốt. Đây là kiểu kiểm thử phần mềm nâng cao giúp QA phát hiện các lỗi nghiêm trọng làm trì hoãn kế hoạch relase phần mềm.
  • Bước kiểm thử này để xác định được phần mềm đã sẵn sàng cho quá trình kiểm thử. Đồng thời phát hiện các sai xót để tránh lãng phí thời gian cùng nhân lực.

Sanity test

Vai trò của Smoke Testing trong kiểm thử phần mềm

Có tầm quan trọng rất lớn trong việc phát triển phần mềm bởi nó đảm bảo hệ thống vận hành đúng ngay từ khi bắt đầu. Khi tiến hành hình thức kiểm thử này sẽ giúp bạn tiết kiệm nguồn lực tối đa. Nó mang đến nhiều lợi ích trong quá trình phát triển dự án:

  • Hiệu quả trong việc phát hiện sớm các bug gây trì hoạn kế hoạch phát triển. Bằng việc xây dựng và thực thi phù hợp với nguyên tắc Pareto 80/20. Smoke Testing dủ chỉ có 20% hoặc ít hơn tổng số test case nhưng có khả năng phát hiện tới 80% lỗi trở lên.
  • Gia tăng hiệu quả của đội QA trong quá trình phát triển dự án giúp tối ưu thời gian và công sức. Khi đội QA làm việc tốt hơn thì họ có thể tự tin về các bản build tiềm năng cao vượt qua trong Smoke Testing.
  • Khắc phục các bug mới và quy hồi nhanh chóng: Bất kỳ lỗi được tìm thấy khi thực thi Smoke Testing đều được nhóm phát triển bắt tay vào xử lý và phân tích mà không cần chờ kết quả của toàn bộ test suite.
  • Đơn giản hóa việc phát hiện và xử lý các defect lớn ảnh hưởng nghiêm trọng đến hệ thống.
  • Smoke Testing giúp đội QA tìm được defect mới trong các chức năng của ứng dụng sau khi đã deploy phần code mới.

So sánh sự khác biệt giữa Sanity test và Smoke testing

sự khác biệt giữa Sanity test và Smoke testing

Tiêu chí Smoke testing  Sanity test
Mục đích  Được thực hiện để xác định các chức năng quan trọng của phần mềm đang hoạt động tốt đúng như mong đợi Thực hiện để kiểm tra các chức năng hoặc lỗi mới đã được khắc phục hay chưa
Mục tiêu  Xác minh tính ổn định của hệ thống để tiến hành kiểm tra chặt chẽ hơn Dùng để xác minh tính hợp lý của hệ thống để tiến hành thử nghiêm ngặt hơn.
Người thực hiện  Thường được thực hiện bởi Tester hoặc developer Được thực hiện bởi Tester
Tài liệu  Thường được ghi lại hoặc có Scrip Không được ghi lại thành tài liệu hoặc Scrip
Quá trình  Thực hiện toàn bộ hệ thống từ đầu đến cuối Chỉ thực hiện một số thành phần cụ thể của toàn bộ hệ thống
Tính chất  Kiểm tra tổng quát Kiểm tra chuyên sâu
Phạm vi  Phạm vi tiếp cận rộng và nông Phạm vi tiếp cận hẹp và sâu
Thời gian thực hiện  Được thực hiện sớm hơn Thực hiện sau khi tiến hành Smoke testing
Tập con  Là tập con của Acceptance testing Thuộc tập con của Regresstion testing.

Những lưu ý về Sanity test và Smoke testing

Sanity test là gì

  • Cả 2 loại kiểm thử này đều là cách để tránh lãng phí thời gian cùng công sức. Bằng việc xác định các lỗi của phần mềm nhanh chóng và có đủ điều kiện để chuyển sang giai đoạn tiếp theo. Với 2 kiểm thử này có thể được thực hiện bằng tay hoặc công cụ tự động hóa.
  • Bạn có thể phải thực hiện cả Sanity và Smoke Tests trên bản build phần mềm trong một trường hợp. Khi đó bạn cần thực hiện các kiểm thử Smoke cùng kiểm tra Sanity.
  • Trong ngành công nghiệp thì các trường hợp Sanity test được kết hợp với smoke testing để tăng tốc độ thử nghiệp cùng sự thân thiện.
  • Đối với các dự án phát triển phần mềm thì một trong những thói quen tốt nhất là tạo dựng build mỗi ngày cùng smoke test.
  • Sanity testing nằm trong Regression testing (Kiểm thử hồi quy).

Qua việc tìm hiểu về ưu, nhược điểm của Sanity test cùng sự khác biệt khi so với Smoke testing. Bạn đọc đã hiểu và học hỏi thêm nhiều kiến thức bổ ích về kiểm thử phần mềm. Nếu có bất cứ thắc mắc gì cần giải đáp thì hãy để lại bình luận phía dưới bài viết.

5/5 - (2 bình chọn)
Từ khóa:
Bình luận
Đăng ký nhận ưu đãi hấp dẫn
Đăng ký nhận ưu đãi hấp dẫn

    Icon Phone