Tìm hiểu kỹ thuật test: phân tích giá trị biên và phân vùng tương đương

Đinh Thao

Phân tích giá trị biên và phân vùng tương đương đều là các kỹ thuật kiểm thử hộp đen, đặc biệt hai kỹ thuật test này thường được sử dụng trong quá trinh thiết kế testcase. Và để hiểu sâu hơn về khái niệm và điểm khác biệt của 2 phương pháp này thì hãy cùng theo dõi những thông tin được chia sẻ trong bài viết dưới đây nhé!

phan tich gia tri bien va phan vung tuong duong

Phân tích giá trị biên

Khái niệm

Phân tích giá trị biên là kỹ thuật test nằm trong phương pháp kiểm thử hộp đen – black box testing. Hiểu đơn giản thì phân tích giá trị biên là quá trình kiểm thử các giá trị biên và các giá trị gần biên.

Nhưng trong thực tế, quá trình thực hiện sẽ tồn tại nhiều giá trị lỗi trong biên và tại các giá trị biên gần kề. Vì thế với trường hợp này testcase sẽ được xác định theo thứ tự:

  • Giá trị biên min -1
  • Giá trị biên min
  • Giá trị biên max
  • Giá trị biên max +1

Ví dụ

Giả định giá vé xe bus đi Hà Nội – Hạ Long:

  • Từ 0 – 5 tuổi: Miễn phí
  • Từ 6 -19 tuổi: 80000
  • Từ 20 – 60 tuổi: 100000
  • Từ 61 – 120 tuổi: 80000
  • Các trường hợp không nằm trong độ tuổi quy định trên được coi là không hợp lệ
phan tich gia tri bien va phan vung tuong duong

Các phương pháp kiểm thử thường sử dụng trong phân tích giá trị biên

Robustness Testing – Kiểm thử biên mạnh

Robustness Testing là phương pháp kiểm thử mở rộng đơn giản của phân tích giá trị biên. Ngoài những giá trị biên cần kiểm thử thì phương pháp này còn thêm vào 2 giá trị biên khác đó là:

  • Giá trị ngay trên giá trị cực đại max +
  • Giá trị ngay dưới giá trị tiểu cực min –

Thực hiện kiểm thử biên mạnh với mục đích kiểm thử giá trị đầu vào của chương trình đã hợp lệ hay chưa.

Kiểm thử các trường hợp xấu nhất

Quá trình các giá trị tương tác với nhau nhưng có nhiều hơn 1 giá trị nhận các giá trị gần biên thì khi này cần sử dụng phương pháp kiểm thử các trường hợp xấu nhất để kiểm thử sự kết hợp này.

Có thể kết hợp sử dụng kiểm thử các trường hợp xấu nhất với Robustness Testing

Kiểm thử các giá trị đặc biệt

Đây là phương pháp kiểm thử quan trọng và được sử dụng nhiều nhất trong thực tế tuy nhiên quy trình thực hiện lại không cố định ở dạng nào mà chúng sẽ thay đổi tùy vào từng dự án.

Quá trình thực hiện kiểm thử các giá trị đặc biệt bạn cần kết hợp giữa kiến thức và kỹ thuật để đưa ra phán đoán và quyết định các ca kiểm thử có thể xảy ra. Tuy cách thực hiện này mang tính chất chủ quan nhưng nó vẫn là phương pháp tối ưu và hiệu quả nhất giúp bạn có thể phát hiện ra khuyết điểm có trong phần mềm.

Ưu và nhược điểm của phân tích giá trị biên

Ưu điểm:

  • Tiết kiệm thời gian viết và thực hiện testcase
  • Quá trình tìm kiếm và phát hiện lỗi ở giá trị biên sẽ tối ưu và hiệu quả hơn.
  • Không tập trung test dữ liệu của vùng tương đương mà phương pháp phân tích giá trị biên sẽ tập trung nhiều vào phần kiểm thử giá trị biên và giá trị dữ liệu đầu vào. Từ đó giúp quá trình thực hiện testcase đơn giản hơn.

Nhược điểm:

Kỹ thuật test phân tích giá trị biên chỉ được áp dụng cho các giá trị đầu vào độc lập với nhau. Ví dụ, trong phần mềm các giá trị đầu vào chỉ ảnh hưởng bởi 1 giá trị đầu vào duy nhất thì trong trường hợp này sử dụng phân tích giá trị biên là tối ưu và hiệu quả nhất.

Phân vùng tương đương

phan tich gia tri bien va phan vung tuong duong

Khái niệm

Cũng giống với phân tích giá trị biên, phân vùng tương đương là 1 phương pháp kiểm thử nằm trong kỹ thuật kiểm thử hộp đen. Quá trình kiểm thử này có thể áp dụng với nhiều trường hợp khác nhau như unit testing, integration testing, system testing……

Phương pháp phân vùng tương đương sẽ chia các dữ liệu thành từng điều kiện đầu vào khác nhau nhưng các giá trị hiển thị tương đương sẽ cho ra cùng 1 kết quả. Chính vì thế, trong quá trình kiểm thử bạn có thể chọn test với 1 giá trị đại diện có trong vùng tương đương. Quá trình này không chỉ tiết kiệm thời gian test mà nó còn giúp giảm đáng kể số lượng testcase cần thực hiện.

Ví dụ

Hệ thống vé vào khu vui chơi có nhập chiều cao (cm) vào cột chiều cao trên hệ thống website trực tuyến. Chi tiết được mô tả như sau:

Chiều cao được nhập phải là số nguyên không bao gồm chữ và số âm với đơn vị tính là cm.

  • Khi nhập chiều cao từ 40 -99 cm sẽ miễn phí vé vào
  • Chiều cao từ 100 – 140 đơn giá sẽ hiển thị [150000]
  • Chiều cao từ 141 – 200 giá vé sẽ là [300000]
  • Nếu chiều cao hơn 200 hệ thống sẽ thông báo lỗi.
phan tich gia tri bien va phan vung tuong duong

Bên cạnh đó, trong quá trình test bạn có thể chọn 1 giá trị đại diện cho các lớp tương đương trên để kiểm thử. Khi này, nếu 1 kết quả trong lớp tương đương đó hợp lệ thì đồng nghĩa với việc các kết quả khác trong lớp tương đương cũng sẽ hợp lệ và ngược lại.

Testcase trong trường hợp này sẽ được mô phỏng bằng bảng sau:

Giá trị đầu vàoKết quả
130Lỗi
250Miễn Phí
3130150000VNĐ
4160300000VNĐ
5208Lỗi

Nguyên tắc xác định phân vùng tương đương

Về cách xác định phân vùng tương đương thông thường sẽ áp dụng 2 cách cơ bản sau:

  • Phân vùng tương đương hợp lệ: Chứa các giá trị đầu vào hợp lệ trong đó phải đáp ứng đầy đủ các yêu cầu mà chương trình đưa ra trước đó.
  • Phân vùng tương đương không hợp lệ: Các giá trị trong trường hợp này có thể không đáp ứng đủ điều kiện đưa ra. Ví dụ không đáp ứng điều kiện đầu vào……..

Về nguyên tắc xác định phân vùng tương đương cần tuân thủ theo:

  • Nếu giới hạn đầu vào của các giá trị được định rõ : Xác định 1 lớp tương đương hợp lệ và 2 lớp tương đương không hợp lệ.
  • Nếu trạng thái đầu vào đã xác định số giá trị: Xác định 1 lớp tương đương hợp lệ và 2 lớp tương đương không hợp lệ.
  • Nếu chương trình chỉ định tệp các giá trị đầu vào và chương trình phần mềm đó có dùng các giá trị là khác nhau: Xác định 1 giá trị tương đương cho mỗi loại và 1 tương đương không hợp lệ
  • Nếu trạng thái đầu vào đang tồn tại ở dạng “chắc chắn – must be”: Xác định 1 lớp tương đương hợp lệ và 2 lớp tương đương không hợp lệ.

Cách kiểm thử với phân vùng tương đương

Sau khi xác định được các lớp tương đương thì tiếp theo bạn nên sử dụng các giá trị của lớp tương đương đó để xác định giá trị kiểm thử. Quá trình thực hiện theo từng bước dưới đây:

  • Gán vào lớp tương đương 1 số duy nhất
  • Khi toàn bộ các giá trị trong lớp tương đương đã hợp lệ sẽ được hợp nhất thành 1 ca kiểm thử. Khi này ca kiểm thử bao gồm càng nhiều lớp tương đương chưa được bao phủ càng tốt.
  • Khi các trường hợp kiểm thử đã bao phủ toàn bộ trường hợp kiểm thử không hợp lệ. Hãy viết 1 trường hợp test chỉ bao gồm một và chỉ một các giá trị tương đương không hợp lệ chưa được bao phủ.
  • Cuối cùng kiểm tra lại dữ liệu đầu vào và có thể thay thế các giá trị chưa hợp lệ (chỉ dùng với trường hợp không được bao phủ).

Ưu và nhược điểm của phân vùng tương đương

Ưu điểm:

Phân vùng tương đương sẽ chia các giá trị đầu vào thành nhiều nhóm nhỏ khác nhau và mỗi nhóm sẽ test đại diện 1 giá trị bất kỳ do đó quá trình thực hiện sẽ giảm đáng kể lượng testcase cần thực hiện và từ đó thời gian cũng tiết kiệm hơn.

Nhược điểm:

Trong khi kiểm thử các giá trị trung gian của vùng giá trị tương đương có thể sẽ làm sót những lỗi tại giá trị biên. Do đó, việc kết hợp phân tích giá trị biên và phân vùng tương đương trong quá trình test rất quan trọng nó sẽ ảnh hưởng tới kết quả của toàn bộ quá trình kiểm thử.

Sự khác biệt giữa phân tích giá trị biên và phân vùng tương đương

Để bạn có thể hiểu chi tiết về sự khác biệt giữa phân tích giá trị biên và phân vùng tương đương thì hãy quan sát vào bảng tổng hợp dưới đây:

Phân tích giá trị biên Phân vùng tương đương
Trường hợp nên sử dụngPhân tích giá trị biên sẽ nhận các giá trị đầu vào từ các giá trị đã được xác định.Các giá trị trong phân vùng tương đường thường được lấy từ dữ liệu đầu vào nằm trong lớp tương đương.
Nguyên tắc xác định giá trịNhận các giá trị dữ liệu đầu vào bao gồm: min +1, min -1, max +1 và max -1.Kiểm thử toàn bộ các giá trị hợp lệ hoặc không hợp lệ với mục đích kiểm tra các ứng dụng đã phát triển.
Nhận dạng lỗiChỉ nhận dạng được lỗi trong phạm vi của giá trị biên.Nhận diện lỗi tại lớp giữa của phân vùng tương đương.
Ứng dụngỨng dụng trong các bài kiểm thử  stress and negativeĐược sử dụng ở bất kỳ giai đoạn kiểm thử nào của kiểm thử đơn vị.
Điều kiện sử dụngChỉ sử dụng cho các giá trị biên gần.Quá trình xác định lớp kiểm thử trong phân vùng tương đương sẽ quyết định tới sự chính xác của kết quả kiểm thử.

Để hiểu hơn về sự khác nhau giữa phân tích giá trị biên và phân vùng tương đương hãy quan sát ví dụ minh họa dưới đây:

Ví dụ: 1 siêu thị đang tổ chức chương trình sale giảm giá, trên website chính thức của siêu thị khách hàng có thể nhập ngày để kiểm tra thời gian kết thúc chương trình nhưng giá trị chỉ được nhập trong khoảng giá trị nguyên từ 20 – 30.

  • Khi bạn nhập ngày trong khoảng từ 20 – 25 bạn có thể nhận được mã giảm giá tối đa là 50%
  • Giá trị của mã giảm giá sẽ là 70% nếu bạn nhập ngày từ 26 – 30
  • Nếu các giá trị không nằm trên khoảng đó thì hệ thống sẽ tự động báo lỗi.
phan tich gia tri bien va phan vung tuong duong

Phân tích giá trị biên và phân vùng tương đương sẽ hiển thị như hình sau:

phan tich gia tri bien va phan vung tuong duong

Mối quan hệ giữa phân tích giá trị biên và phân vùng tương đương

Phân tích giá trị biên và phân vùng tương đương là 2 kỹ thuật kiểm thử hộp đen rất quan trọng có liên quan mật thiết tới nhau. Bởi phân tích giá trị biên sẽ sử dụng lại kết quả của phân vùng tương đương cho các bước tiếp theo của quy trình thiết kế testcase.

Quá trình này sẽ phân chia giá trị biên thành nhiều lớp tương đương khác nhau từ phạm vi và đối tượng test từ đó lựa chọn ra các giá trị đại diện cho phân vùng đó. Bên cạnh đó quá trình này người kiểm thử cần áp dụng kỹ thuật phân tích giá trị biên và phân tích giá trị gần biên để có thể chọn ra các giá trị đại diện 1 cách nhanh chóng và chính xác nhất.

Và khi kết hợp cả 2 kỹ thuật phân tích giá trị biên và phân vùng tương đương sẽ giúp người kiểm thử:

  • Dễ dàng giảm được số lượng testcase cần thực hiện và quản lý được toàn bộ số lượng test case đã phân chia.
  • Nhanh chóng phát hiện lỗi.
  • Trong quá trình kiểm thử, giá trị đầu vào lớn cho thể giúp bạn kiểm thử tập trung vào 1 điểm.
  • Phù hợp với các phần mềm có dữ liệu đầu vào lớn.
  • Hướng dẫn chi tiết các trường hợp cần kiểm thử mà không làm ảnh hưởng tới hiệu quả của toàn bô quá trình kiểm thử
phan tich gia tri bien va phan vung tuong duong

>>>Xem thêm: Kiểm thử hộp đen là gì? Các kỹ thuật kiểm thử hộp đen

Bài viết trên là toàn bộ những kiến thức chúng tôi muốn chia sẻ tới bạn về phân tích giá trị biên và phân vùng tương đương. Mong rằng bài viết này sẽ hữu ích đối với bạn!

5/5 - (1 bình chọn)
Từ khóa:
Bình luận
Icon Phone