Kiểm thử hộp đen (Blackbox testing) là gì và tầm quan trọng của kĩ thuật này


Từ: 22:03 14/10/2013
Bài: 5
Cảm ơn: 3
Thích: 2

Dù muốn trở thành 1 người Tester ở mức độ nào đi nữa, dù chuyên nghiệp hay không chuyên thì trước tiên những kiến thức về kiểm thử phần mềm bạn cần phải biết và nắm rõ. Một trong những kiến thức đó, không thể không nhắc đến đó là những kiến thức về Kiểm thử hộp đen ( Black Box Testing ). Sau đây, bài viết của mình trong tuần này xin giới thiệu với các bạn 1 số nét cơ bản nhất về Kiểm thử hộp đen.

          1. Kiểm thử hộp đen :

          + Là 1 phương pháp mà người kiểm thử xem phần mềm như 1 hộp đen, không quan tâm đến cách thức làm việc,  cấu trúc, hành vi bên trong  của hệ thống.

          + Người kiểm thử chi quan tâm đến việc tìm ra hiện tượng mà phần mềm không xử lý theo đúng đặc tả của nó và vì  thế dữ liệu kiểm thử sẽ xuất phát từ đặc tả.

         2. Kiểm thử hộp đen cố gắng tìm ra các lỗi như:

          + Lỗi chức năng thiếu hoặc không đúng.

          + Lỗi giao diện

          + Lỗi cấu trúc dữ liệu trong truy cập cơ sở dữ liệu bên ngoài

          + Lỗi khởi tạo hoặc kết thúc

          + Và nhiều lỗi khác

          + Kiểm thử hộp đen áp dụng cho các giai đoạn sau của kiểm thử

         3. Một số loại kiểm thử hộp đen hay dùng:

         Có nhiều loại kiểm thử hộp đen như: kiểm thử giá trị biên, kiểm thử lớp tương đương, kiểm thử ngẫu nhiên, đồ thị  nhân-quả, kiểm thử cú pháp. Nhưng ở đây chúng ta tìm hiểu 2 loại kiểm thử hay dùng nhất trong kiểm thử hộp đen đó là :

        a. Kiểm thử lớp tương đương

         + Là 1 phương pháp kiểm thử hộp đen chia miền đầu vào thành các lớp dữ liệu, từ đó suy dẫn ra các ca kiểm thử.

         + Phương pháp này cố gắng xác định ra 1 ca kiểm thử mà làm lộ ra 1 lớp lỗi

          => Làm giảm tổng số các tường hợp kiểm thử phải được xây dựng.

  • Ý tưởng:

*    Phân hoạch miền dữ liệu vào thành các lớp dữ liệu có quan hệ với nhau.

*    Mỗi lớp dùng để kiểm thử 1 chức năng, gọi là lớp tương đương.

  • Các bước kiểm thử:

*    B1: Đỗi với mỗi dữ liệu vào: Xác định các lớp tương đương từ miền dữ liệu vào.

*    B2: Chọn dữ liệu đại diện cho mỗi lớp tương đương.

*    B3: Kết hợp các dữ liệu thử bởi tích Đề-các để tại bộ dữ liệu kiểm thử.

  • Nguyên tắc phân hoạch các lớp tương đương:

*    Nếu dữ liệu vào thuộc 1 khoảng thì xây dựng:

            + 1 lớp các giá trị lớn hơn

+ 1 lớp các giá trị nhỏ hơn

            +  n lớp các giá trị hợp lệ

*    Nếu dữ liệu là tập hợp các giá trị thì xây dựng:

            + 1 lớp với tập rỗng

+ 1 lớp quá nhiều các giá trị

            +  n lớp hợp lệ

*    Nếu dữ liệu vào là điều kiện ràng buộc thì xây dựng:

            + 1 lớp với ràng buộc được thỏa mãn

+ 1 lớp với ràng buộc không thỏa mãn

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

  • Các điều kiện biên : là tình trạng trực tiếp ở phía trên và phía dưới của các lớp tương đương đầu vào và lớp tương đương đầu ra.
  • Cơ sở: lỗi thường xuất hiện gần các giá trị biên của miền dữ liệu
  • Nguyên tắc: kiểm thử các dữ liệu gồm:

*    Giá trị nhỏ nhất

*    Giá trị gần kề lớn hơn giá trị nhỏ nhất

*    Giá trị bình thường

*    Giá trị gần kề nhỏ hơn giá trị lớn nhất

*    Giá trị lớn nhất

  • Nguyên tắc chọn dữ liệu thử:

*    Nếu dữ liệu vào thuộc 1 khoảng, chọn:

         + 2 giá trị biên

         + 4 giá trị = giá trị biên +(-) sai số nhỏ nhất

*    Nếu giá trị biên thuộc danh sách các giá trị, chọn:

         + Phần tử thứ nhất, phần tử thứ 2, phần tử kề cuối và phần tử cuối.

*    Nếu dữ liệu vào là điều kiện ràng buộc số giá trị, chọn:

         + Số gái trị tối thiểu, số giá trị tối đa và một số các số giá trị không hợp lệ.

*    Tự vận dụng khả năng và thực tế để chọn các giá trị biên cần kiểm thử

Label
Từ: 14:09 17/10/2013
Bài: 1
Cảm ơn: 0
Thích: 1

bài viết của bạn rất hữu ích cho người mới như mình.Thanks

Label
Từ: 11:03 24/09/2014
Bài: 7
Cảm ơn: 1
Thích: 1

Bài viết khá hay, bạn có thể nêu 1 vài vd như vậy người đọc có thể dễ hình dung hơn smiley

 

Label
Từ: 22:03 14/10/2013
Bài: 5
Cảm ơn: 3
Thích: 2

@shinichikudo2698

Ví dụ : Kiểm tra tính hợp lệ của các tháng trong năm

  • Với n là tháng trong năm,

 - Ta có: 3 phân lớp tương đương

          n < 1 : không phải tháng trong năm

          1 ≤ n ≤ 12 : là tháng trong năm

          n > 12 : không là tháng trong năm

 - Các giá trị biên: 1, 12

 

 

TestData

Expected Results

TC001

0

Không hợp lệ

TC002

1

Tháng trong năm

TC003

2

Tháng trong năm

TC004

11

Tháng trong năm

TC005

12

Tháng trong năm

TC006

13

Không hợp lệ