Trang chủ » Kiến thức » Tìm hiểu về kỹ thuật kiểm thử phần mềm: Phân tích giá trị biên và phân vùng tương đương

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

Admin
Phan tich gia tri bien va phan vung tuong duong

Các kỹ thuật Kiểm thử phần mềm đối với một Tester là vô cùng quan trọng, vận dụng chúng một cách linh hoạt sẽ giúp cho việc thiết kế Testcase để tìm ra lỗi trở lên dễ dàng hơn. Trong bài viết sau, chúng tôi sẽ giới thiệu đến bạn 2 kỹ thuật test thường được dùng phổ biến trong thiết kế Test là Phân tích giá trị biên và Phân vùng tương đương. Những thông tin sau chắc chắn sẽ giúp việc test của bạn trở lên hiệu quả hơn, đảm bảo chất lượng của sản phẩm.

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

Phân tích giá trị biên là gì?

Phân tích giá trị biên (Boundary Value Analysis) là một 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 biên. Giá trị biên là giá trị nhỏ nhất hoặc lớn nhất mà một đầu vào có thể nhận được trước khi nó vượt quá ranh giới của miền giá trị hợp lệ. Giữ liệu đầu vào là Positive testing nếu được sử dụng trong giới hạn giá trị biên. Là Negative testing nếu dữ liệu đầu vào được sử dụng là ngoài giới hạn giá trị biên.

Phân tích giá trị biên là một phương pháp quan trọng để đảm bảo tính chính xác và độ tin cậy của chương trình, đặc biệt là khi chương trình đó đóng vai trò quan trọng trong các ứng dụng, chương trình mang tính thương mại.

Các bước thực hiện phân tích giá trị biên

Các bước thực hiện phân tích giá trị biên trong kiểm thử phần mềm gồm:

Bước 1: Xác định các biến đầu vào và các giá trị có thể có của chúng.

Bước 2: Xác định các giá trị biên: cụ thể, xác định các giá trị biên của các biến đầu vào, bao gồm giá trị nhỏ nhất, giá trị lớn nhất và các giá trị nằm giữa.

Bước 3: Lựa chọn các giá trị để kiểm thử, bao gồm các giá trị biên và các giá trị nằm giữa.

Bước 4: Tạo các ca kiểm thử để kiểm tra tính đúng đắn của phần mềm.

Bước 5: Cuối cùng, thực hiện kiểm thử và ghi nhận kết quả để phân tích và xử lý các lỗi phát hiện được.

Ví dụ minh họa về phân tích giá trị biên

vi du phan tich gia tri bien

(*) 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 sẽ 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
  • Case 5: Để trống không nhập gì hay nhập ký tự không phải dạng chữ => hiển thị lỗi

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

Ưu điểm:

  • Kỹ thuật phân tích giá trị biên tập trung vào Test giá trị biên của giá trị đầu vào thay vì test toàn bộ các giá trị trong vùng tương đương, nhờ vậy có thể tạo ra được các Testcase giúp dễ phát hiện lỗi.
  • Hiệu quả: Phân tích giá trị biên là một kỹ thuật kiểm thử phần mềm hiệu quả, nó cho phép tìm ra các lỗi trong phần mềm một cách nhanh chóng và hiệu quả.
  • Tối ưu hóa thời gian kiểm thử: Kỹ thuật này giúp tối ưu hóa thời gian kiểm thử bằng cách chỉ kiểm thử các giá trị quan trọng nhất, giúp tiết kiệm thời gian và nguồn lực.
  • Dễ triển khai: Phân tích giá trị biên là một kỹ thuật đơn giản và dễ triển khai, không yêu cầu nhiều kiến thức kỹ thuật.
  • Tiết kiệm chi phí: Kỹ thuật này giúp tiết kiệm chi phí cho các dự án kiểm thử phần mềm.
  • Giảm thiểu sai sót: Sử dụng phân tích giá trị biên giúp giảm thiểu sai sót trong quá trình kiểm thử, đặc biệt là trong các trường hợp có số lượng các giá trị đầu vào lớn.

Nhược điểm:

  • Kỹ thuật phân tích giá trị biên không thể phát hiện được tất cả các lỗi trong phần mềm.
  • Không áp dụng được cho tất cả các trường hợp: Kỹ thuật này chỉ áp dụng được trong những trường hợp có thể phân tích được các giá trị biên của đầu vào.
  • Để áp dụng phân tích giá trị biên, người kiểm thử cần phải có kiến thức về hệ thống và dữ liệu đầu vào.
  • Phân tích giá trị biên không thể xác định được giá trị tối đa và tối thiểu của một tham số đầu vào.

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

Phân vùng tương đương là gì?

phan vung tuong duong

Phân vùng tương đương là một trong những kỹ thuật trong phương pháp kiểm thử hộp đen, nó chia các điều kiện đầu vào thành một vùng tương đương nhau. Nó giúp ta có thể test một giá trị đại diện trong vùng tương đương để cho một kết quả đầu ra giống nhau. 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 (1 câu hoặc 1 cụm từ trong đặc tả) và phân chia nó thành 2 hay nhiều nhóm.

  • Giá trị biên nhỏ nhất -1
  • Giá trị biên nhỏ nhất
  • Giá trị biên lớn nhất
  • Giá trị biên lớn nhất +1

Các bước thực hiện phân vùng tương đương

Việc Thiết kế Test – case bằng phân lớp tương đương được tiến hành theo 2 bước:

Bước 1: Xác định các lớp tương đương 

Có hai kiểu lớp tương đương được xác định:Lớp tương đương hợp lệ: Nó mô tả các đầu vào hợp lệ của chương trình; Lớp tương đương không hợp lệ: Mô tả tất cả các trạng thái khác có thể của điều kiện.

Các nguyên tắc xác định lớp tương đương:

  • Xác định 1 lớp tương đương hợp lệ và 2 lớp tương đương không hợp lệ khi Trạng thái đầu vào định rõ giới hạn của các giá trị.
  • Xác định 1 lớp tương đương hợp lệ và 2 lớp tương đương bất hợp lệ khi 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ệ cho mỗi loại và 1 lớp tương đương không hợp lệ khi 1 trạng thái đầu vào chỉ tập trung các giá trị đầu vào và chương trình sử dụng cho mỗi giá trị là khác nhau
  • Xác định 1 lớp tương đương hợp lệ và 1 lớp tương đương không hợp lệ khi 1 trạng thái đầu vào chỉ định một tình huống “chắc chắn – must be”,

Bước 2: Xác định các ca kiểm thử

Sau khi đã xác định được các lớp tương đương ở trên, ta tiến hành sử dụng các lớp tương đương đó để xác định các ca kiểm thử. Quy trình như sau:

  • Với mỗi lớp tương đương án 1 số duy nhất
  • Viết 1 ca kiểm thử mới bao phủ càng nhiều các lớp tương đương đó chưa được bao phủ càng tốt, Cho đến khi tất cả các lớp tương đương hợp lệ được bao phủ bởi các ca kiểm thử.
  • Khi các ca kiểm thử đã được bao phủ tất cả các lớp tương đương không hợp lệ, lúc này bạn tiến hành viết 1 ca kiểm thử mà bao phủ một và chỉ một trong các lớp tương đương không hợp lệ chưa được bao phủ.
  • Nếu mỗi ca kiểm thử riêng bao phủ các trường hợp không hợp lệ thì nguyên nhân là do các kiểm tra đầu vào không đúng nào đó che giấu hoặc thay thế các kiểm tra đầu vào không đúng khác nhé!

Ví dụ minh họa về phân vùng tương đương

vi du phan vung tuong duong

(*) Form nhập số tầng của tòa nhà bao gồm:

Floor: Text-box

Yêu cầu đặt ra:

Thiết kế test case sao cho chỉ cho nhập ký tự là số với độ dài trong khoảng [0-10] khi người dùng nhập vào ô textbox Salary 

(*) Dựa vào yêu cầu bài toán ta có thể có các lớp tương đương (phân vùng) như sau:

  • Phân vùng 1: Nhập giá trị hợp lệ từ 0=> 10 ký tự
  • Phân vùng 2: Nhập giá trị không hợp lệ < 0 ký tự
  • Phân vùng 3: Nhập giá trị không hợp lệ > 10 ký tự
  • Phân vùng 4: Trường hợp để trống (không nhập gì hoặc nhập ký tự không phải dạng số)

Sau khi áp dụng phân vùng tương đương thì sẽ chọn được các ca kiểm thử (test case) sau:

  • 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

Ưu điểm, nhược điểm của kỹ thuật phân vùng tương đương

Ưu điểm:

  • Tiết kiệm thời gian và chi phí: Phân vùng tương đương cho phép kiểm thử một số lượng dữ liệu đầu vào nhỏ hơn so với kiểm thử toàn bộ các giá trị đầu vào có thể, giúp giảm số lượng testcase tiết kiệm thời gian và chi phí trong quá trình kiểm thử.
  • Phát hiện các lỗi tiềm ẩn: nó giúp phát hiện các lỗi tiềm ẩn trong phần mềm bằng cách tập trung kiểm thử các trường hợp có khả năng gây ra lỗi nhiều hơn.
  • Dễ dàng triển khai: Phương pháp phân vùng tương đương đơn giản và dễ triển khai, không yêu cầu nhiều kinh nghiệm và kỹ năng của các Tester

Nhược điểm:

  • Phân vùng tương đương không thể phát hiện tất cả các lỗi trong phần mềm
  • Phương pháp phân vùng tương đương không phù hợp cho các trường hợp có rất nhiều biến số và các giá trị đầu vào phức tạp.
  • Khi áp dụng phân vùng tương đương, Tester cần chọn lựa các giá trị đầu vào đại diện cho từng nhóm tương đương một cách cẩn thận để đảm bảo tính đúng đắn của quá trình kiểm thử.
  • Trong trường hợp test các giá trị trung gian trong từng lớp tương đương có thể vẫn để sót những lỗi tại giá trị biên. Do đó việc kết hợp cả hai kỹ thuật phân tích giá trị biên và phân vùng tương đương là rất cần thiết trong quá trình test.

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

Su khac nhau giua phan tich gia tri bien va phan vung tuong duong
Phân tích giá trị biênPhân vùng tương đương
Định nghĩaPhân tích giá trị biên là kỹ thuật kiểm thử phần mềm tập trung vào kiểm tra giá trị đầu vào tại các giá trị biên (giá trị tối thiểu và tối đa)Phân vùng tương đương là kỹ thuật chia các giá trị đầu vào thành các nhóm tương đương để tối ưu hóa quá trình kiểm thử.
Mục đíchTìm kiếm các lỗi tiềm ẩn liên quan đến giá trị đầu vào tại các giá trị biênTìm kiếm các lỗi tiềm ẩn trong phần mềm bằng cách tập trung kiểm thử các trường hợp có khả năng gây ra lỗi nhiều hơn
Phạm vi áp dụngÁp dụng cho các giá trị đầu vào có giá trị tối thiểu và tối đaÁp dụng cho các giá trị đầu vào không giới hạn
Cách thức thực hiệnTập trung vào kiểm tra các giá trị đầu vào tại giá trị biênPhân vùng tương đương chia các giá trị đầu vào thành các nhóm tương đương
Hiệu quảPhân tích giá trị biên hiệu quả trong việc phát hiện các lỗi liên quan đến giá trị đầu vào tại các giá trị biênPhân vùng tương đương hiệu quả trong việc tối ưu hóa quá trình kiểm thử bằng cách chia các giá trị đầu vào thành các nhóm tương đương.

Cách kết hợp phân tích giá trị biên và phân vùng tương đương để tăng cường độ chính xác và hiệu quả trong kiểm thử phần mềm

Kết hợp phân tích giá trị biên và phân vùng tương đương là một cách tốt để tăng cường độ chính xác và hiệu quả trong kiểm thử phần mềm. Dưới đây là một số cách để kết hợp hai kỹ thuật này mà bạn có thể tham khảo:

1.Sử dụng phân tích giá trị biên để kiểm tra các giá trị biên quan trọng của dữ liệu đầu vào. Sau đó, sử dụng phân vùng tương đương để chia các giá trị đầu vào còn lại thành các nhóm tương đương. Kết hợp hai kỹ thuật này sẽ giúp tối ưu hóa quá trình kiểm thử và đảm bảo rằng tất cả các trường hợp quan trọng đã được kiểm tra.

2. Sử dụng phân vùng tương đương để phân chia các giá trị đầu vào thành các nhóm tương đương. Sau đó, sử dụng phân tích giá trị biên để kiểm tra các giá trị biên quan trọng của từng nhóm. Việc này sẽ giúp tìm ra các lỗi liên quan đến các giá trị biên quan trọng của từng nhóm.

3. Sử dụng phân tích giá trị biên và phân vùng tương đương đồng thời trên các chức năng liên quan đến nhau. Việc này sẽ giúp tối ưu hóa quá trình kiểm thử cho toàn bộ hệ thống và đảm bảo rằng tất cả các trường hợp quan trọng đã được kiểm tra.

4. Sử dụng kỹ thuật phân tích giá trị biên và phân vùng tương đương để tạo ra các trường hợp kiểm thử tổng hợp. Việc này sẽ giúp tăng cường độ chính xác và hiệu quả trong kiểm thử bằng cách kết hợp các trường hợp kiểm thử tốt nhất từ hai kỹ thuật này.

Trên đây là những thông tin cần thiết cho bạn về Phân tích giá trị biên và phân vùng tương đương trong Kiểm thử phần mềm. Nếu muốn trở thành một Tester chuyên nghiệp bạn nên nắm vững cho mình những kỹ thuật này, còn nếu bạn đang muốn bắt đầu với công việc Tester thì đừng quên tham khảo Khóa học Tester cho người mới bắt đầu của chúng tôi nhé!

4.7/5 - (3 bình chọn)
Từ khóa:
Bình luận
Đăng ký nhận ưu đãi hấp dẫn
Đăng ký nhận ưu đãi hấp dẫn

    Icon Phone