Chuyển đến nội dung chính

Chiến lượt kiểm thử bình thường (Sanity testing - Muốn dịch sao cũng được)

Nội dung: diễn giải và có ví dụ cụ thể về Sanity test.

1) Khái niệm: Sanity Test - Kiểm thử bình thường là một loại kỹ thuật kiểm thử trong đó tester sẽ kiểm tra những chức năng mới thêm, bug đã hoàn chỉnh trên hệ thống và tập trung vào một hoặc vài vùng mới chứ không phải toàn bộ hệ thống.
Khất bại.
Ví dụ: hi một phiên bản vừa ra đời ta sẽ ưu tiên kiểm tra những chức năng mà gây ra lỗi ở bản trước hoặc chức năng mới thêm ở bản hiện tại, ta áp dụng chiến lượt Sanity test nếu phần mềm không được như mong đợi thì từ chối nhận và đánh dấu là phiên bản này đã tPhần mềm máy tính v.1 được tích hợp chức năng cộng: 1 + 2 = 5 => Qua phiên bản sau v.2  lỗi không được fix thì => Phiên bản v.2 đã thất bại.

2) Ví dụ và áp dụng:
Hệ thống phần mềm bán dừa qua internet phiên bản 1.0 với 20 chức năng khác nhau. Nhưng khi tạo một hóa đơn cho người mua dừa có lỗi không hiển thị địa chỉ của người này.
Người chủ muốn qua phiên bản: 2.0 sẽ sửa được lỗi trên và có thể hiển thị thêm Coupon khi tạo hóa đơn.

=> Là tester ta áp dụng kỹ thuật Sanity Test (- Đôi khi ta gọi nó chiến lượt Sanity Test cho sang trọng.)
Khi áp dụng: ta sẽ thực hiện việc testing trên hai phần:
Một là kiểm tra lỗi không hiển thị địa chỉ có còn hay không, hai là kiểm tra chức năng mới thêm Coupon có được thực thi vào hay không?

Sau khi định được vùng sẽ kiểm tra, ta đưa ra những kịch bản để test cho vùng đó. Cơ bản sẽ là:
Kịch bản 1 - Tạo hóa đơn mua dừa => Ưu tiên kiểm tra lỗi và chức năng Coupon.
Kịch bản 2 - Người mua không có nhập địa chỉ khi mua dừa.
...

3) Khi nào áp dụng sanity test:

Sanity testing được thực thi khi team phát triển cần biết nhanh trạng thái của sản phẩm sau khi update có bị lỗi gì nghiêm trọng hay không, hoặc khi thời gian eo hẹp không dư thừa để thực hiện đầy đủ một bộ regression test.

Kết luận:

Việc áp dụng Sanity test chỉ nhằm mục đích kiểm tra chức năng mới (hoặc mới sửa) đã đúng hay chưa, chứ không phải để kiểm tra đệ quy toàn bộ hệ thống sau khi update có phát sinh ra bug hay không. Khi phiên bản mới được tạo ra, ta áp dụng kỹ thuật Sanity test để xác định rằng phiên bản này có đúng như mong muốn hay không?!

Kỹ thuật này phù hợp với mô hình Agile, hoặc khi dự án thay đổi chức năng liên tục hoặc khi dự án cần bổ sung gấp chức năng nhưng thời gian thì có giới hạn.

Nhận xét

Bài đăng phổ biến từ blog này

Hướng dẫn cơ bản về chẩn đoán mã lỗi OBD 2 trên ô tô

OBD2 - DTCs    1) Diagnostic Trouble Code (DTC) là gì? DTC hay còn gọi là mã lỗi là những mã được lưu trữ trong máy tính của xe hơi. Mỗi xe hơi hiện đại từ 1994 trở đi đều được trang bị một hộp đen có chứa máy tính, máy tính này có nhiệm vụ chẩn đoán tình trạng hiện tại của xe nhằm đảm bảo xe được vận hành an toàn không gây nguy hiểm cho người sử dụng (Ví dụ: nếu máy tính này phát hiện thắng xe đang có lỗi nó sẽ cảnh báo và không cho người dùng sử dụng xe). Mỗi mã được lưu trữ mang một ý nghĩa nhất định và chỉ ra nơi đang gặp vấn đề trong xe. Kỹ sư ô tô dựa vào đó để tìm và sửa lỗi. Mã lỗi này có thể đọc được bằng cách dùng thiết bị đọc mã lỗi do các bên thứ ba phát hành. Hiện tại trên thị trường có rất nhiều loại thiết bị đọc mã lỗi với các tính năng khác nhau. 2) DTC có đáng tin cậy không? Câu trả lời là: Có và không! Có vì nó chỉ ra những mã lỗi một cách dã chiến nhất theo ý hiểu của máy tính (Cá nhân tôi gọi là ngu ngốc). Ví dụ: nếu một bộ phận cảm biến nà...

Dùng Jira Quản lý testcase

Jira là bộ công cụ quản lý bug và công việc hiệu quả theo mô hình Agile framework, SCRUM (scrum là lý thuyết). Khi ta dùng Jira kết hợp với việc quản lý testcase: 1. Lợi ích và nhược điểm trong việc quản lý testcase dùng Jira. Jira phát triển một hệ thống software inside tools, có khả năng kết nối với các công cụ của MS như Excel, Word,... nên hầu như mọi công ty khi team test phát triển hệ thống đều kết nối MS Excel làm testcase list và Jira làm task links. Ưu điểm: nhanh gọn, excel viết testcase nhanh thông dụng, đánh kết quả tốt chỉ cần 1 template chuẩn cho việc này. Khuyết điểm: Jira testcase attach, việc tìm kiếm nội dung không tốt nếu triển khai Jira team không thành công. 2. Tester dùng Jira. Tester dùng Jira như một member và chạy task trên Project. Thường một task dev thì tester chia 3 loại: - Create test case - Prepare data test - Execution test Trong một vài công ty lớn chuyên nghiệp thì họ chia thêm một số việc như: Thực thi test môi trường thử nghiệm, môi trường pilot...

Bảy nguyên tắc cơ bản của Kiểm thử phần mềm

Nội dung: nói và diễn giải về bảy nguyên tắc cơ bản trong testing software. Bài này là bài lý thuyết bổ sung và tester phải nắm được nằm lòng các nguyên tắc này! Bảy nguyên tắc (như khẩu huyết trong võ công): Kiểm thử tất cả mọi trường hợp là không thể được. ( EXHAUSTIVE testing is not possible ). Giải thích như sau: Một form có textbox cho phép nhập từ 1 -> 1.000.000.000.000. Nếu để kiểm thử nhập liệu cho textbox này ta phải kiểm thử 1k tỷ lần. Mỗi thao tác nhập cho là 1 giây, và phép toán kiểm tra nhập liệu là 0.1 giây nữa thì ta phải mất xấp xỉ 1k tỷ giây là khoảng 31k năm để thực thi nó. Đời người chỉ khoảng một trăm năm, vậy phải mất cả mấy nghìn đời để thực thi kiểm tra một textbox mà chưa kể đến nhiều đối tượng khác cho nên mới nói điều này là không thể làm được! (Chi phí nuôi nghìn người và giá trị bỏ ra là không xứng). Để xử lý thì ta: dùng kỹ thuật phân vùng tương đương, Phân nhánh nghiệp vụ, chia lớp xử lý... (Sẽ nói chi tiết sau). Kiểm thử là chỉ ra sai sót đang có ...