Low Level Test Case
Duy Văn | 23/12/2024
Khái niệm
Sau khi đã viết được một cái High Level Test Case và tạo được RTM, đống TC và RTM sẽ được đưa đi review bởi các thành viên trong team test gọi là peer review. Sau khi đã review xong, ổn thoả thì giờ sẽ phải biến chúng nó thành Low Level Test Case.
Low Level Test Case chính là cái Test Case đúng nghĩa mà chúng ta dùng để chạy test, nó là tập hợp các đầu vào, tiền điều kiện, kết quả mong muốn hay hậu điệu kiện để nhằm xác minh tính chính xác của sản phẩm phần mềm theo yêu cầu.
Vậy thì Low Level Test Case sẽ cần có đầy đủ thông tin, kiểu dạng như mở rộng từ một High Level Test Case:
- Tên : Tên của Test Case
- Tiền điều kiện: Điều kiện cần thoả mãn trước khi có thể thực hiện test case
- Bước thực hiện: Các bước cần thực hiện để thực hiện test case
- Kết quả mong muốn: Kết quả mà chúng ta mong muốn sau khi thực hiện test case
- Hậu điều kiện: Điều kiện xảy ra sau khi thực hiện test case
Với kinh nghiệm, một low level test case sẽ có template như sau:
| Test Case ID | Test Case Title | Test Case Description | Precondition | Steps | Expected Result | Test Data | Priority | Status |
| Test Case ID | ID của một Test Case thì sẽ đặt theo tuỳ dòng dự án, đôi khi nó còn được generate tự động ,gần như random. Tuy nhiên, nếu thực hiện viết test case trên spreadsheet dạng excel thì ID này phải tự viết |
| Test Case Title | Tên của Test Case, về cơ bản chúng ta sẽ lấy luôn High Level Test Case làm title |
| Test Case Description | Mô tả các thông tin cơ bản của Test Case, ví dụ như thực hiện ở màn hình nào, URL là gì, sử dụng trình duyệt nào, tool nào,… |
| Precondition | Điều kiện cần thoả mãn, thì có 2 kiểu viết: Một là viết chay (chỉ áp dụng với viết spreadsheet), ví dụ như một test case User successfully login... thì cần phải vào được màn hình đấy trước, vậy nên Precondition sẽ là User navigate to login page Hai là dùng link (áp dụng cho cả spreadsheet và đặc biệt là khi dùng tool), precondition sẽ là một link nối sang một test case khác mà test case đó phải được thực hiện trước khi thực hiện test case đang viết |
| Steps | Các bước thực hiện, mỗi bước sẽ là một dòng, mỗi bước sẽ có một số thứ tự, mỗi bước sẽ có một mô tả ngắn gọn, đầy đủ chủ ngữ vị ngữ |
| Expected Result | Kết quả mong muốn sau khi thực hiện bước đó, tương ứng với mỗi một bước thực hiện bên Steps sẽ là một dòng kết quả |
| Test Data | Dữ liệu cần thiết để thực hiện test case, ví dụ như username, password, hay là cần đưa vào file |
| Priority | Mức độ ưu tiên của Test Case, có thể là tuỳ dòng dự án mà có quy chuẩn khác nhau, nhưng cơ bản sẽ có 5 mức, P0, P1, P2, P3, P4 Mức độ ưu tiên của Test Case sẽ biểu diễn mức quan trọng hay có thể là thứ tự ưu tiên của test case khi chạy, có hai tiêu chí để xác định: Một test case mà cần được thực hiện trước rất nhiều test case, hay nói cách khác nó là precondition của rất nhiều test case thì mức độ ưu tiên thường phải cao, có thể là P0 hay P1 Các test case cover tính năng chính và quan trọng của sản phẩm, thì ưu tiên cũng sẽ cao Các test case cover những tính năng nhỏ, ít quan trọng hay ví dụ như test UI thì ưu tiên không cao, thường là P3 P4 |
| Status | Status ở đây sẽ không phải là Pass hay Fail nhé, ta đang không chạy mà chỉ đang viết, vậy nên status này sẽ là New, Approved, In Progress, Obsolete, … tuỳ dòng dự án, nhưng nôm na nó sẽ nói lên trạng thái của test case trên phương diện nghiệp vụ |
Ví dụ
Hãy lấy ví dụ test case từ High Level Test Case User successfully login to the system with username 'admin' and password 'admin'
- Đầu tiên, chúng ta cần có một test case gọi nôm na là
Navigateđể đưa user đến màn hình đăng nhập, đương nhiên nó ĐÃ có một High Level Test Case tương ứng làNavigate to login page, nhưng ở đây để ví dụ cả Precondition thì mình sẽ viết cho 2 High Level Test Case
| Test Case ID | Test Case Title | Test Case Description | Precondition | Steps | Expected Result | Test Data | Priority | Status |
|---|---|---|---|---|---|---|---|---|
| TC001 | Navigate to login page | Environment : Test Browser: Chrome URL: None | None | 1. Open browser and navigate to URL https://127.0.0.1:4000 | 1. User is navigated to login page | Not applied | P0 | New |
| TC002 | User successfully login to the system with username ‘admin’ and password ‘admin’ | Environment : Test Browser: Chrome URL: htpps://127.0.0.1:4000 | TC001 | 1. Input username ‘admin’ 2. Input password ‘admin’ 3. Click on login button | 1. ‘admin’ is filled for username field 2. ‘admin’ is filled for password field 3. User navigate to account dashboard | Not applied | P0 | New |
Cả hai test case đều có ưu tiên là P0, do cả hai đều cover tính năng đăng nhập , là tính năng quan trọng nhất của hệ thống, và cả hai đều mới được viết ra, nên status là New
Ngoài ra, có một kiểu viết khác như sau:
| Test Case ID | Test Case Title | Test Case Description | Precondition | Steps | Expected Result | Test Data | Priority | Status |
|---|---|---|---|---|---|---|---|---|
| TC002 | User successfully login to the system with ${username} and ${password} | Environment : Test Browser: Chrome URL: htpps://127.0.0.1:4000 | TC001 | 1. Input username ${username} 2. Input password ${password} 3. Click on login button | 1. ${username} is filled for username field 2. ${password} is filled for password field 3. User navigate to account dashboard | ${username} = ‘admin’ ${password}=’admin’ | P0 | New |
Kiểu này thì mình không khuyến khích vì nó hơi technical thái quá
Hãy thử viết test case để kiểm tra tính năng tìm kiếm của ebay.com
Kết luận
Đến đây thì bạn đã có thể bắt đầu viết test case rồi. Nếu đang viết bằng speadsheet, hãy chú ý một số tip sau:
- Có thể chia các test case ra vào các sheet theo màn hình

Các test case chia theo màn hình