Mẫu test case cho form đăng ký excel
Test cases là đơn vị nhỏ nhất trong kế hoạch kểm thử, mô tả các hành động và thông số cần thiết để xác minh hoạt động của một chức năng cụ thể. Vậy một Test Case Template chuẩn có cấu trúc như thế nào? Bao gồm những trường nào quan trọng? Từng trường trong Test Case Template có ý nghĩa như thế nào? Hãy đọc bài viết này để hiểu rõ hơn về Test Case nhé. Show Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức. 1. Các trường quan trọng trong Test Case TemplateTest Case Template có cách trình bày tốt giúp duy trì tính nhất quán của kiểm thử cho nhóm kiểm thử và giúp tất cả các bên liên quan dễ dàng hiểu được Test Cases. Viết Test Cases trong một định dạng chuẩn làm giảm effort kiểm thử và giảm tỷ lệ lỗi. Định dạng Test Cases sẽ chuẩn hơn nếu bạn tham khảo Test Cases từ các chuyên gia. Test Case Template được chọn cho dự án phụ thuộc vào chính sách kiểm thử. Nhiều tổ chức tạo các Test Cases từ Microsoft Excel trong khi một số tổ chức tạo Test cases từ Microsoft Word. Một số tổ chức sử dụng các công cụ quản lý kiểm thử như HP ALM để ghi lại các Test Cases. ✓ Test case là một trường hợp cần kiểm thử, nó bao gồm các thao tác/hành động trên hệ thống, điều kiện cần (tiên quyết), các giá trị đầu vào, và kết quả mong đợi. Một test case thì nên chỉ kiểm tra một trường hợp, một khía cạnh cụ thể nào đó chứ đừng lan man – Tham khảo định nghĩa của ISTQB Glossary. Test case là tiếng Anh, dịch sang tiếng Việt là “trường hợp kiểm thử” hoặc “ca kiểm thử.” Test case thường có 2 loại chính: test case chi tiết và test case cơ bản. Sẽ được trình bày chi tiết bên dưới. Bài viết này sẽ hướng dẫn bạn cách viết và sắp xếp test case hiệu quả bảo đảm độ bao phủ yêu cầu tốt. Nguyên văn định nghĩa trên trang https://glossary.istqb.org A set of preconditions, inputs, actions (where applicable), expected results and postconditions, developed based on test conditions. Test case gồm những gìTrong thực tế test case được trình bày theo nhiều định dạng khác nhau, có thể sử dụng MS Excel hoặc công cụ nào đó để quản lý test case như TestLink hoặc TestRail. Dù test case được trình bày theo dạng nào, thì thành phần chính của test case cũng bao gồm các thông tin sau:
Ngoài ra còn có các thông tin khác giúp mình quản lý test case tốt hơn, giúp mình biết được test case này là viết cho yêu cầu nào, user story nào,… thì mình sẽ thêm cột Test requirement,… để quản lý. Xem thêm Cấu trúc test case ở đây nhé. Test case mẫuMột ví dụ test case mẫu trình bày bằng MS Excel Quy trình viết test caseTuỳ vào loại test case, mức kiểm thử, hoặc chương trình bạn đang viết test case thì sẽ có các bước, trình tự khác nhau để viết test case, nhưng nhìn chung thì quy trình viết test case sẽ gồm các bước cơ bản sau:
Tìm hiểu hệ thống đang được kiểm thửBạn phải đọc tài liệu SRS (software requirement specification) hay spec (specification) và những loại tài liệu khác, bao gồm user story (hay viết tắt là US) để hiểu về hệ thống. Thậm chí bạn phải sử dụng thử các phiên bản hiện có, hoặc phiên bản khác như web (trong lúc bạn viết test case cho bản mobile – đang được phát triển). Có khi bạn phải tìm hiểu các ứng dụng tương tự trên thị trường, sản phẩm của đối thủ cạnh tranh,… nếu dự án của bạn không có tài liệu mô tả yêu cầu. Phân tích tài liệu thường gặp như user story, SRS hay use case (không phải là user case nha) là cần thiết khi bạn áp dụng kỹ thuật thiết kế test case hộp đen (black-box test techniques) để viết test case. Còn nếu bạn đang áp dụng kỹ thuật hộp trắng (white-box testing) thì phải cần có source code, tài liệu mô tả thiết kế chi tiết như ERD, sequence diagram, v.v… Viết test caseÁp dụng các kỹ thuật thiết kế test case như phân vùng tương đương, phân tích giá trị biên, bảng quyết định, v.v… để xác định các trường hợp cần kiểm thử và viết nó ra. Quan trọng là bạn phải nghĩ ra được những trường hợp cần kiểm thử, còn việc trình bày thì theo mẫu (format) của dự án bạn đang tham gia thôi. Mỗi dự án, công ty, hay khách hàng khác nhau họ sẽ sử dụng các định dạng (format) test case và công cụ (tool) quản lý test khác nhau. “Viết test case sao cho bao phủ đủ?” là một câu hỏi thường gặp nhưng khó trả lời. Để xác định “như thế nào là đủ” sẽ còn phụ thuộc vào mong muốn của khách hàng, mục tiêu kiểm thử của bạn là gì? (mục tiêu của bạn test để làm gì), và bạn có bao nhiêu tester tham gia, bao nhiêu thời gian để viết và thực thi test case? Nếu viết nhiều mà không có thời gian để chạy hết thì viết nhiều để làm gì? Viết nhiều mà bao phủ các trường hợp ở trong cùng 1 vùng tương đương thì liệu có hiệu quả không? Sắp xếp test caseSau khi bạn viết case xong thì nên xem lại và sắp xếp test case trước sau theo một trình tự để khi thực thi cho hiệu quả. Thường test case sẽ được sắp xếp dựa vào độ ưu tiên, loại test case, và sự phụ thuộc lẫn nhau.
Mức chi tiết của test caseThường test case có nhiều mức, nhưng bài này mình nói về 2 mức chi tiết chính là high-level test case (test case cơ bản), và detailed test case (test case chi tiết). High-level test caseNhiều người cho rằng test case cơ bản này là checklist, nhưng thực ra nó không phải. Checklist là danh sách các trường hợp cần kiểm thử chung dành cho mọi chương trình, hệ thống. Nói cách khác, với checklist thì nó là “dùng chung” cho mọi sản phẩm cùng loại hoặc có chứng năng tương tự, ví dụ: khi kiểm thử web thì:
Nhưng tuỳ vào hệ thống mà bạn đang test, thì bạn sẽ phải biết (thường là dựa vào tài liệu mô tả yêu cầu chức năng, phi chức năng) để biết được UI thế nào là đúng và có bao nhiêu loại user trong hệ thống đó, và user nào có thể làm được gì (authorization). High-level test case là khi bạn liệt kê danh sách những trường hợp cần kiểm thử đó, nhưng không mô tả chi tiết các bước thực hiện cũng như dữ liệu, giá trị cần nhập vào, và kết quả mong muốn như thế nào. Test case chi tiếtNgược lại với high-level test case, test case chi tiết phải bao gồm thông tin chi tiết các bước thực hiện cũng như dữ liệu, giá trị cần nhập vào, và kết quả mong muốn như thế nào. Tuỳ vào loại test case (UI, chức năng, phi chức năng,…) mà các bước thực hiện hoặc kết quả mong đợi sẽ khác nhau. Nhưng, điểm chung của test case chi tiết là phải mô tả dữ liệu đầu vào và kết quả mong đợi, thường được gọi là test data (dữ liệu test). Test case và Test scenarioĐể giúp bạn phân biệt test scenario và test case, vui lòng xem video ngắn này nhé Câu hỏi thường gặpDưới đây là một số câu hỏi thường gặp liên quan đến vấn đề thiết kế test case. Test case gồm những gì? Test case thường bao gồm những thành phần chính sau: Làm sao để viết test case bao phủ tốt? Test case bao phủ tốt là phải bao gồm các loại test case cho UI (nếu có – vì giả sử bạn đang test API thì làm gì có UI mà bắt buộc phải có test case cho UI), test case cho các trường hợp happy case (positive case), và negative case (unhappy case). Và quan trọng hơn hết, tập test case của bạn phải bao phủ mọi nghiệp vụ, chức năng cần thiết theo mô tả yêu cầu. Dự án nào cần viết test case? Dù bạn đang tham gia dự án gia công phần mềm (outsourcing) hay công ty phát triển phần mềm (hay gọi là công ty product) thì việc viết test case và mức độ chi tiết của test case sẽ khác nhau. Tuy nhiên, chí ít cũng nên viết checklist để bảo đảm các chức năng chính sẽ/đã được kiểm thử, và phần mềm đã bao phủ (cover) hết các yêu cầu đã mô tả. Có cần phải viết test case không? Không phải dự án nào cũng có đủ thời gian để viết test case. Thông thường thì trong khi Lập trình viên (dev) đang lập trình (phát triển) thì tester (QC) sẽ có thời gian để viết test case. Không viết test case có được không? Việc có viết test case hay không sẽ phụ thuộc vào từng trường hợp cụ thể. Phụ thuộc vào ngữ cảnh, tình hình thực tế của dự án mà tester cân nhắc nên test trước rồi viết test case hay là viết test case trước rồi test. Ngoài ra, mọi việc còn phụ thuộc vào quyết định của Khách hàng, QC/Tester Leader và Project Leader/Manager nữa. |