Checklist based testing
I. Lý thuyết tổng quan
1. Checklist là gì?
● Checklist là một danh sách các đầu mục về chức năng, nghiệp vụ hoặc câu hỏi gợi nhớ cần kiểm tra trong một thủ tục hay quy định nhất định. Nó mang tính bao quát
● Từ một checklist có thể phát triển thành nhiều testcase
● Checklist based testing là việc thực hiện test dựa vào danh sách checklist có sẵn
2. Tại sao phải sử dụng checklist trong kiểm thử?
● Để đảm bảo được đầy đủ yêu cầu của khách hàng
● Đảm bảo rằng phần mềm được kiểm tra với mức bao phủ cần thiết
● Giảm bớt việc bỏ sót lỗi của tester
● Việc điền kết quả test nhanh
● Giúp công việc kiểm thử đảm bảo mức độ đúng đắn, chính xác cho phần mềm
● Giúp tester bao quát được vùng kiểm thử
● Tăng cường sự phối hợp giữa các nhóm tham gia khác liên quan tới nhau trong
quy trình kiểm thử phần mềm
3. Cách xây dựng một checklist như thế nào?
• Tùy vào tính chất từng dự án mà sẽ xây dựng lên checklist với các tiêu chí test khác
nhau.
• Nếu khách hàng không quy định và không có mẫu sẵn thì tùy vào từng sự nhìn
nhận của mỗi kiểm thử viên sẽ xây dựng checklist phù hợp
+ Xác định đối tượng cần tạo checklist
+ Tạo các checklist cơ bản thông qua các hiểu biết của bản thân
+ Bổ sung các nội dung còn thiếu thông qua việc trao đổi với chuyên gia và tra cứu trên mạng
+ Lấy đồng thuận từ các thành viên khác trong nhóm
4. Chúng ta thường dùng checklist khi nào?
● Khi không có đủ thời gian viết test case
● Dùng để trainning
● Dùng để xác nhận review trước khi bắt tay vào phát triển test case
5. Chúng ta thường dùng checklist ở đâu?
● Với các ứng dụng có chức năng cơ bản, đơn giản, không phức tạp và dễ hiểu
● Với các chức năng hay list công việc phải lặp lại nhiều lần
● Với các ứng dụng, chức năng phức tạp, cần điều kiện, dữ liệu, thao tác chi tiết, cụ thể thì nên viết thành test case
6. Ai sử dụng checklist?
● Checklist được sử dụng bởi hầu hết các tester có kinh nghiệm để test hoặc để hướng dẫn các tester mới
● Các thành viên trong dự án dùng để xác nhận các hạng mục cần phát triển
7. Ưu điểm, nhược điểm của checklist là gì?
• Ưu điểm:
+ Ngắn gọn, đảm báo tính đúng đắn, chính xác cho phần mềm kiểm thử
+ Giúp tester nhìn thấy rõ và bao quát quy trình kiểm tra
+ Mất ít thời gian phù hợp những dự án có specs thay đổi nhiều, lượng công việc lớn
+ Kết quả phân tích (Tiến độ công việc, tình trạng hoàn thành) là rất dễ dàng
+ Rất linh hoạt (Bạn có thể thêm hoặc bỏ các mục không cần thiết)
• Nhược điểm:
+ Việc chọn lọc case sẽ khó khăn nếu không nắm rõ yêu cầu của hệ thống.
+ Kiểm thử viên cần khả năng nhìn nhận để thực hiện được nhiều case test dựa trên các hạng mục ở checklist
+ Sẽ khó khăn cho những bạn kiểm thử viên mới vì trong checklist không có thao tác rõ ràng
II. Tạo checklist Septech
1. Mục tiêu:
● Muốn tạo được danh sách checklist dùng cho toàn bộ SQA septech, tiết kiệm thời gian và công sức của cả nhóm
● Phù hợp với tiêu chí phát triển nhanh
2. Khó khăn và mong muốn
● Thời gian:
+ Dự án bận rộn, tài liệu nhiều nhưng trùng lặp, việc chọn lọc khó
+ Có những hạng mục thường xuyên làm, nhưng để trình bày theo ngôn ngữ chung dễ hiểu mất nhiều thời gian
● Kinh nghiệm: Việc tạo checklist về chủ đề nào đó cần kinh nghiệm và kiến thức sâu rộng. Bản thân thành viên nhóm cũng gặp các hạn chế như vậy, chưa có kinh nghiệm với nhiều loại dự án trên nhiều loại thiết bị hoặc hệ điều hành khác nhau (web form, mobile, win form…)
● Mong muốn: Tất cả các thành viên trong nhóm SQA có thể đóng góp kinh nghiệm, thời gian tạo và bổ sung thêm các checklist để tài liệu ngày càng hoàn
thiện hơn và làm tài liệu chung của cả nhóm
3. Danh sách một số checklist:
● Graph User Interface
● Element & Datatype
● Function Search
● Function Sort
● Function Pagging
● Function Master Data
● Function Login
● Function Upload & Download CSV
● Function Send mail
● Mobile
Chi tiết tại: https://docs.google.com/spreadsheets/d/18w7co1371FA2YKL4dm7Mx3S4qxZjUxH3L_KtCfH5-Ic/edit#gid=775156649
4. Tài liệu tham khảo:
● http://www.mobileqazone.com/profiles/blogs/what-is-checklist-based-testing
● https://www.quora.com/What-is-checklist-based-testing
● http://qualitypointtech.net/forum/viewtopic.php?f=12&t=8546
● https://www.stickyminds.com/sites/default/files/article/file/2014/Graphical%20UI%20Testing%20Checklist.pdf
● http://sqa.fyicenter.com/FAQ/Software-Testing-Check-List/
● http://www.seleniumtests.com/2014/05/manual-testing-checklist.html
**Created by: Thaobtp, ThanhDP, TuoiTT**