Để đảm bảo chất lượng của một hoặc nhiều dự án phần mềm QA cần phải tạo được bộ testcase phù hợp. Để thực hiện việc kiểm tra phần mềm với thời gian ngắn nhất mà vẫn đạt chất lượng cao nhất cần phải hiểu sâu về nghiệp vụ của phần mềm và linh hoạt trong việc thiết kế testcase. Thiết kế testcase trong kiểm thử phần mềm là quá trình xây dựng các phương pháp kiểm thử có thể phát hiện lỗi, sai sót, khuyết điểm của phần mềm để xây dựng phần mềm đạt tiêu chuẩn. kỹ thuật phân tích giá trị biên và phân vùng tương đương.
Trong phương pháp kiểm thử hộp đen, có 2 kỹ thuật thường được sử dụng mà nếu vận dụng một cách linh hoạt thì sẽ giảm thiểu rất nhiều số lượng case thừa, tiết kiệm thời gian kiểm thử mà vẫn đảm bảo chất lượng phần mềm. Chúng ta sẽ giới thiệu ngay dưới đây.
1. Kỹ thuật phân vùng tương đương – Equivalence Partitioning
1.1 Định nghĩa:
Phân vùng tương đương là phương pháp chia các điều kiện đầu vào thành những vùng tương đương nhau. Tất cả các giá trị trong một vùng tương đương sẽ cho một kết quả đầu ra giống nhau. Vì vậy chúng ta có thể test một giá trị đại diện trong vùng tương đương. Các lớp tương đương được xác định bằng cách lấy mỗi trạng thái đầu vào và phân chia nó thành 2 hay nhiều nhóm.
1.1.1 Xác định các lớp tương đương:
Có hai kiểu lớp tương đương được xác định:
a. Lớp tương đương hợp lệ mô tả các đầu vào hợp lệ của chương trình, và lớp tương đương không hợp lệ mô tả tất cả các trạng thái có thể khác của điều kiện (ví dụ, các giá trị đầu vào không đúng).
b. Nếu 1 trạng thái đầu vào chỉ định tập các giá trị đầu vào và chương trình sử dụng mỗi giá trị là khác nhau, xác định 1 lớp tương đương hợp lệ cho mỗi loại và 1 lớp tương đương không hợp lệ.
1.1.2 Xác định các ca kiểm thử.
Với các lớp tương đương xác định được ở bước trên, bước thứ hai là sử dụng các lớp tương đương đó để xác định các ca kiểm thử.
1.2. Ví dụ:
(*) Form nhập số tầng của tòa nhà bao gồm:
Floor: Text-box
Thiết kế test-case bằng phân lớp tương đương tiến hành theo 2 bước:
Case 1: Nhập giá trị từ 0 => 10 (có thể chỉ nhập số 5)=> pass
Case 2: Nhập giá trị < 0 (có thể chỉ nhập số -5) => hiển thị lỗi
Case 3: Nhập giá trị > 10 => hiển thị lỗi
Case 4: Để trống không nhập gì hay nhập ký tự không phải dạng số => hiển thị lỗi
1.3. Ưu/ nhược điểm:
(*) Ưu điểm:
- Tiết kiệm thời gian thiết kế test case và thực hiện test.
- Giảm số lượng test case thông qua việc test các giá trị đại diện.
(*) Nhược điểm:
- Không phù hợp cho tất cả các loại bài toán, đặc biệt là khi các đối số đầu vào không độc lập hoặc không có miền giá trị hữu hạn.
2. Kỹ thuật phân tích giá trị biên
2.1 Định nghĩa:
Kỹ thuật phân tích giá trị biên là một trong những kỹ thuật kiểm thử phần mềm, trong đó các testcase được thiết kế bao gồm các giá trị tại các biên. Mục tiêu là lựa chọn các test case để thực thi giá trị biên.
2.2. Ví dụ:
(*) Form nhập số tầng của tòa nhà bao gồm:
Floor: Text-box
Áp dụng kỹ thuật phân tích giá trị biên ta chọn được các case sau:
Case 1: Nhập giá trị là -1 => hiển thị lỗi
Case 2: Nhập giá trị là 0 => pass
Case 3: Nhập giá trị với 10 => pass
Case 4: Nhập giá trị với 11 => hiển thị lỗi