Kỹ thuật Phân tích giá trị biên và phân vùng tương đương
Thực tế, do cân nhắc về thời gian và ngân sách, không thể thực hiện kiểm thử từng bộ dữ liệu, đặc biệt khi có một nhóm nhiều các đầu vào kết hợp.
- Chúng ta cần sử dụng các kỹ thuật đặc biệt để lựa chọn test cases từ bộ test cases, sao cho tất cả các test scenarios được bao phủ.
- Có hai kỹ thuật để giải quyết vấn đề này: Kỹ thuật kiểm thử phân tích giá trị biên và phân vùng tương đương.
1. Kiểm thử giá trị biên (Boundary Testing) là gì?
Kiểm thử giá trị biên là quá trình kiểm thử các điểm cuối hoặc ranh giới giữa các phân vùng của các giá trị đầu vào.
Vì vậy, các điểm như điểm bắt đầu – điểm kết thúc, điểm cao nhất – điểm thấp nhất, tối đa – tối thiểu, bên trong – bên ngoài được gọi là các giá trị biên và khi kiểm thử được gọi là "kiểm thử giá trị biên".
Ý tưởng cơ bản trong kiểm thử giá trị biên là chọn các giá trị đầu vào tại những điểm:
Bài viết này được đăng tại [free tuts .net]
- Tối thiểu
- Trên mức tối thiểu
- Một giá trị hợp lệ
- Dưới mức tối đa
- Tối đa
Kiểm thử giá trị biên, phân vùng lớp tương đương đóng một vai trò quan trọng.
Kiểm thử giá trị biên được sử dụng sau khi phân vùng tương đương.
2. Phân vùng tương đương (Equivalent Class Partitioning) là gì?
Phân vùng lớp tương đương là một kỹ thuật hộp đen, có thể được áp dụng cho tất cả các cấp độ kiểm thử như kiểm thử đơn vị, kiểm thử tích hợp, kiểm thử hệ thống, v.v. Trong kỹ thuật này, bạn chia tập hợp điều kiện kiểm thử thành phân vùng như nhau.
- Chia dữ liệu đầu vào thành các lớp dữ liệu tương đương khác nhau.
- Bạn có thể áp dụng kỹ thuật này để áp dụng phạm vi giá trị đầu vào của các trường.
Ví dụ 1: Giá trị đầu vào từ 1 đến 10 là hợp lệ
Hãy xem hoạt động của vé trong ứng dụng đặt vé máy bay khi đặt chuyến bay mới.
Giá trị vé 1 đến 10 được coi là hợp lệ và vé được đặt. Giá trị 11 đến 99 được coi là không hợp lệ để đặt trước và thông báo lỗi sẽ xuất hiện, "Chỉ mười vé có thể được đặt cùng một lúc."
Điều kiện kiểm thử như sau:
- Bất kỳ Số nào lớn hơn 10 được nhập trong cột đặt phòng (giả sử 11) được coi là không hợp lệ.
- Bất kỳ số nào nhỏ hơn 1, bằng 0 hoặc thấp hơn, thì được coi là không hợp lệ.
- Số 1 đến 10 được coi là hợp lệ
- Bất kỳ số có 3 chữ số là không hợp lệ.
Chúng ta không thể kiểm thử tất cả các giá trị có thể bởi vì nếu được thực hiện, số lượng test cases sẽ nhiều hơn 100. Để giải quyết vấn đề này, chúng ta sử dụng giả thuyết phân vùng tương đương, chúng ta chia các giá trị có thể thành các nhóm hoặc bộ và hệ thống các hành vi có thể được coi là như nhau.
Các bộ được chia được gọi là phân vùng tương đương hoặc các lớp tương đương. Sau đó, chúng ta chỉ chọn một giá trị từ mỗi phân vùng để kiểm thử. Giả thuyết đằng sau kỹ thuật này là nếu kết quả kiểm thử một điều kiện / giá trị trong phân vùng là passes thì tất cả các điều kiện khác cũng sẽ pass. Tương tự, nếu một điều kiện trong phân vùng bị fails, tất cả các điều kiện khác trong phân vùng đó sẽ fail.
Trong Phân tích giá trị biên, bạn kiểm thử ranh giới giữa các phân vùng tương đương.
Trong ví dụ trước của chúng ta thay vì kiểm thử một giá trị cho mỗi phân vùng, bạn sẽ kiểm thử các giá trị tại các phân vùng như 0, 1, 10, 11, v.v. Như bạn có thể quan sát, phải kiểm thử các giá trị ở cả ranh giới hợp lệ và không hợp lệ. Phân tích giá trị biên cũng được gọi là kiểm thử phạm vi.
Phân vùng tương đương và phân tích giá trị biên có liên quan chặt chẽ và có thể được sử dụng cùng nhau ở tất cả các cấp độ kiểm thử.
Ví dụ 2: Mật khẩu chấp nhận tối thiểu 6 ký tự và tối đa 10 ký tự
Giả sử trường mật khẩu chấp nhận tối thiểu 6 ký tự và tối đa 10 ký tự
Điều đó có nghĩa là kết quả cho các giá trị trong các phân vùng 0-5, 6-10, 11-14 phải tương đương
Test Scenario # | Mô tả Test Scenario | Kết quả dự kiến |
1 | Nhập 0 đến 5 ký tự vào trường mật khẩu | Hệ thống không chấp nhận |
2 | Nhập 6 đến 10 ký tự vào trường mật khẩu | Hệ thống chấp nhận |
3 | Nhập 11 đến 14 ký tự vào trường mật khẩu | Hệ thống không chấp nhận |
Ví dụ 3: Đầu vào chấp nhận số 1 đến 10
Chúng ta sẽ sử dụng các test cases giá trị biên:
Mô tả Test Scenario | Kết quả dự kiến |
Giá trị biên = 0 | Hệ thống KHÔNG chấp nhận |
Giá trị biên = 1 | Hệ thống chấp nhận |
Giá trị biên = 2 | Hệ thống chấp nhận |
Giá trị biên = 9 | Hệ thống chấp nhận |
Giá trị biên = 10 | Hệ thống chấp nhận |
Giá trị biên = 11 | Hệ thống KHÔNG chấp nhận |
3. Tại sao cần kiểm thử giá trị biên và phân vùng tương đương?
- Hai kỹ thuật này được sử dụng để giảm số lượng lớn các test cases. Các khối test cases đã được phần chia có thể quản lý được.
- Hướng dẫn rất rõ ràng về việc xác định các test cases mà không ảnh hưởng đến hiệu quả của kiểm thử.
- Thích hợp cho các ứng dụng chuyên về tính toán với số lượng lớn biến / đầu vào.
4. Kết luận
Kiểm thử phân tích giá trị biên được sử dụng khi thực tế không thể kiểm thử riêng nhóm lớn các test cases.
Hai kỹ thuật - Kỹ thuật kiểm thử phân tích giá trị giá trị biên và phân vùng tương đương được sử dụng:
- Phân vùng tương đương: chia tập các điều kiện kiểm thử thành các phân vùng.
- Phân tích giá trị biên: kiểm thử ranh giới giữa các phân vùng tương đương
Thích hợp cho các ứng dụng chuyên về tính toán với các biến đại diện cho đại lượng vật lý.