Tải bản đầy đủ (.pptx) (35 trang)

PHƯƠNG PHÁP PHÂN TÍCH GIÁ TRỊ BIÊN (BOUNDARY VALUE ANALYSIS) KIỂM THỬ HỘP ĐEN (BLACK BOX)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.32 MB, 35 trang )

THUYẾT TRÌNH
CÔNG NGHỆ PHẦN MỀM
KIỂM THỬ HỘP ĐEN-BLACK BOX
PHƯƠNG PHÁP PHÂN TÍCH GIÁ TRỊ BIÊN-BOUNDARY VALUE ANALYSIS
GIÁO VIÊN HƯỚNG DẪN:
Th.s. LÊ THỊ MỸ HẠNH
NHÓM GỒM CÁC THÀNH VIÊN:

HOÀNG NGHĨA QUYỀN

TRẦN XUÂN MINH ĐỨC

LÊ VĂN MINH
PHƯƠNG PHÁP PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)
KIỂM THỬ HỘP ĐEN -(BLACK BOX)
PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)
THẾ NÀO LÀ HỘP ĐEN ?…
Phương pháp kiểm thử Black box là
nghiên cứu xem phần mềm như là một
“hộp đen” không biết gì về hoạt động
bên trong của nó.
GIỚI THIỆU VỀ KIỂM THỬ HỘP ĐEN
PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)
GIỚI THIỆU VỀ KIỂM THỬ HỘP ĐEN
EVENTS
(CÁC BƯỚC THỰC HIỆN)
REQUIREMENTS
(YÊU CẦU)


OUTPUT
(KẾT QUẢ THỰC TẾ)
INPUT
(DỮ LIỆU ĐẦU VÀO)
PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)
Các phương pháp kiểm thử Black box bao gồm:
1. Phân vùng tương đương(Equivalence partitioning);
2. Phân tích giá trị biên (Boundary value analysis);
3. Kỹ thuật đồ thị nhân quả (Cause – Effect Graphics)
4. Kiểm thử so sánh ( Comparision Testing)
5. Kiểm thử dựa trên nền đồ thị.
v.v.v
GIỚI THIỆU VỀ KIỂM THỬ HỘP ĐEN
PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)
ĐỊNH NGHĨA BVA

Phân tích giá trị biên (BVA) là kỹ thuật thiết kế xác
định các ca kiểm thử và hoàn thành phân vùng
tương đương.

Kiểm thử các dữ liệu vào bao 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ề bé hơn giá trị lớn nhất.

Giá trị lớn nhất.
Các chương trình có thể coi là một hàm (toán học)
- Các đầu vào chương trình là miền xác định của hàm
- Các đầu ra là miền giá trị của hàm
Phân tích giá trị biên (boundary value analysis - BVA)
là kỹ thuật kiểm thử hàm phổ biến nhất
Mục tiêu của kiểm thử hàm là sử dung kiến thức về
hàm để xác định các ca kiểm thử
Trước kia chủ yếu tập trung vào miền xác định, nhưng
nay đã dựa trên cả miền giá trị của hàm để xác định ca
kiểm thử
PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)
ĐỊNH NGHĨA BVA
Phân tích giá trị biên tập trung vào biên của miền xác định
để xây dựng ca kiểm thử
Lý do là lỗi thường xảy ra ở gần các giá trị biên này
Chương trình viết bằng ngôn ngữ không có kiểm tra kiểu
mạnh càng cần kiểm thử giá trị biên
Javascript, php, Visual Basic
PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)
ĐỊNH NGHĨA BVA
PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)
ĐẦU VÀO HỢP LỆ CỦA CHƯƠNG TRÌNH P
Từ đây chúng ta giả sử có chương trình P nhận hai biến đầu
vào là y1 và y2 thỏa mãn a ≤ y1 ≤ b and c ≤ y2 ≤ d

P(y1, y2) where a <= y1 <= b, c <= y2 <= d
Miền xác định
a b
c
d
y2
y1
Phân tích giá trị biên sẽ chọn các giá trị:
Giá trị nhỏ nhất
Ngay trên giá trị nhỏ nhất
Một giá trị bình thường
Ngay dưới giá trị lớn nhất
Giá trị lớn nhất
Ví dụ:
a <= y1 <=b thì sẽ chọn a, a+1, a+b/2, b-1, b.
PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)
CHỌN GIÁ TRỊ
a b
c
d
y2
y1
PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)
GIẢ THIẾT KHIẾM KHUYẾT ĐƠN
Phân tích giá trị biên dựa trên nguyên lý giả định
khuyếm khuyết đơn:

“Hỏng hóc xảy ra hiếm khi do hai (hoặc hơn) khiếm

khuyết cùng xảy ra”
Do đó các ca kiểm thử theo phương pháp này
được tạo bằng việc lấy các giá trị bình thường của
các chiều/biên rồi lần thay mỗi chiều bằng các giá
trị cực trị như trên.
PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)
CÁC CA KIỂM THỬ THEO PHÂN TÍCH GIÁ TRỊ BIÊN
12
T = { <y1nom, y2min>, <y1nom, y2min+>, <y1nom, y2nom>, <y1nom, y2max-
>,<y1nom, y2max+>,
<y1min, y2nom>, < 1nin+, y2nom>, <y1max-, y2nom>, <y1max,
y2nom> }
.
.
.
.
.
a b
c
d
y2
y1
PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)
CÁC CA KIỂM THỬ TAM GIÁC
Case # a b c Expected Output
1 100 100 1 Tam giác cân
2 100 100 2 Tam giác cân
3 100 100 100 Tam giác đều

4 100 100 199 Tam giác cân
5 100 100 200 Không phải tam giác
6 100 1 100 Tam giác cân
7 100 2 100 Tam giác cân
8 100 100 100 Tam giác đều
9 100 199 100 Tam giác cân
10 100 200 100 Không phải tam giác
11 1 100 100 Tam giác cân
12 2 100 100 Tam giác cân
13 100 100 100 Tam giác đều
14 199 100 100 Tam giác cân
15 200 100 100 Không phải tam giác
PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)
CÁC CA KIỂM THỬ TAM GIÁC
Có hai cách tổng quát hóa :

Theo số biến, sẽ có (4n +1) ca kiểm thử cho n biến

Theo loại khoảng của biến

Phụ thuộc ngôn ngữ lập trình

Tính rời rạc của biến

Tính rời rạc không bị chặn (không có cận trên và cận dưới rõ ràng)

Biến logic
.
.

.
.
.
a b
c
d
y2
y1
BVA hiệu quả với các chương trình có các đầu
vào độc lập nhau và biểu diễn đại lượng vật lý
bị chặn
BVA lấy các ca kiểm thử mà không tính đến
chức năng của hàm, hay ý nghĩa của các biến
PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)
NHƯỢC ĐIỂM CỦA PHƯƠNG PHÁP
PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)
KIỂM THỬ BIÊN MẠNH
Kiểm thử biên mạnh (robustness testing) là một mở rộng
đơn giản của BVA
Ngoài năm giá trị biên bổ sung thêm hai giá trị ngoài biên:

Giá trị ngay trên giá trị cực đại (max+) và

Giá trị ngay dưới giá trị cực tiểu (min-).
Mục đích chính là xem chương trình có kiểm tra giá trị hợp
lệ của đầu vào không.
PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)

KIỂM THỬ BIÊN MẠNH
CÁC CA KIỂM THỬ BIÊN MẠNH CHO P
Kiểm thử theo giá trị biên đầy đủ: 6.n +1
. …
.
.
.
.
.



.
.
.
.
.
.
CÁC CA KIỂM THỬ VBA BIÊN CHO P
Kiểm thử theo giá trị biên: 4.n +1
a b
c
d
y2
y1
a b
c
d
y2
y1

PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)
KIỂM THỬ TRƯỜNG HỢP XẤU NHẤT
Đi kiểm tra điều gì xảy ra khi nhiều hơn một biến
nhận các giá trị (gần) cực trị?
Khi các biến có tương tác với nhau thì cần kiểm
tra các bộ giá trị kết hợp các cực trị này
Có thể kết hợp với kiểm thử mạnh để có bộ kiểm
thử trường hợp xấu nhất mạnh

18
.
.
.
.
.
a b
c
d
y2
y1
PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)
KIỂM THỬ TRƯỜNG HỢP XẤU NHẤT
CÁC CA KIỂM THỬ TRƯỜNG HỢP XẤU
NHẤT CHO P
Kiểm thử theo giá trị biên xấu nhất: 5n
.
.
.

.
.
. …
. …
. …
. …
. …
. …
. …
CÁC CA KIỂM THỬ TRƯỜNG
HỢP XẤU NHẤT MẠNH CHO P
a b
c
d
y2
y1 a b
c
d
y2
y1
PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)
KIỂM THỬ ĐẶC BIỆT
- Kiểm thử giá trị đặc biệt là phương pháp được
thực hiện nhiều nhất trên thực tế, nó cũng trực quan
nhất, và không có dạng cố định nhất
- Sử dụng kỹ nghệ và kiến thức miền ứng dụng để
phán đoán và đưa ra ca kiểm thử
- Mặc dù mang tính chủ quan cao, đây vẫn là
phương pháp hiệu quả để phát hiện khiếm khuyết

của chương trình
PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)
HƯỚNG DẪN ÁP DỤNG PHƯƠNG PHÁP BVA
Trừ kiểm thử giá trị đặc biệt, kiểm thử giá trị biên là phương
pháp thô sơ nhất
Cân nhắc các tình huống để chọn phương pháp phù hợp:
Các biến có độc lập hay phụ thuộc nhau không
Có cần các giá trị mạnh hay giá trị thường
Có thể áp dụng BVA cho miền giá trị (đầu ra), hay các biến
khác trong chương trình như biến đếm vòng lặp, biến trung
gian, chỉ số mảng, con trỏ,
PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)
HƯỚNG DẪN ÁP DỤNG PHƯƠNG PHÁP BVA
-Thường được áp dụng đối với các đối số của một phương
thức
-Tập trung vào việc kiểm thử các giá trị biên của miền giá trị
inputs để thiết kế test case do “lỗi thường tiềm ẩn lại các
ngõ ngách và tập hợp tại biên” ( Beizer )
-Phân tích giá trị biên hiệu quả nhất trong trường hợp “các
đối số đầu vào (input variables) độc lập với nhau và mỗi đối
số đều có một miền giá trị hữu hạn”
PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)
BÀI TOÁN ÁP DỤNG
PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)
BÀI TOÁN ÁP DỤNG : BÀI TOÁN CHIA HOA HỒNG
Một người bán hàng chuyên bán khóa, báng và nòng

súng trường cho một cửa hàng.
Giá của Khóa = 45$, báng = 30$, và nòng = 25$
Mỗi người bán hàng phải bán ít nhất một bộ đầy đủ
mỗi tháng (100 đô)
Người bán giỏi nhất bán được 70 khóa, 80 báng, 90
nòng một tháng
PHÂN TÍCH GIÁ TRỊ BIÊN
(BOUNDARY VALUE ANALYSIS)
BÀI TOÁN ÁP DỤNG : BÀI TOÁN CHIA HOA HỒNG
Hàng tháng mỗi người bán sẽ gửi báo cáo về cho cửa hàng
với tổng số hàng bán được cho mỗi thị trấn anh ta đến
Số thành phố đến được mỗi tháng là từ 1 đến 10.
Người bán nhận được:
10% nếu số tiền bán được <= 1000 đô,
15% trên 800 đô tiếp theo, và
20% của số tiền vượt quá 1800.

×