1. 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ử
2. Phân tích giá trị biên (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
3. Chọn giá trị
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.
4. 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.
5. Hạn chế của BVA
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
5.1 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.
5.2 Kiểm thử trường hợp xấu nhất
Đ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
5.3 Kiểm thử giá trị đặ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
6. Bài tập ví dụ:
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
>>>
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.
6.1 Bài toán 2 Tìm ngày kế tiếp với các ràng buộc dưới đây
1<= day <= 31
1 <= Month <= 12
1812 <= Year <= 2012
# Chúc các bạn học tập vui :)
Những ý kiến về trang này và chia sẻ của bạn hãy phản hồi cho mình qua mail: thuyph138@gmail.com
Rất vui vì sự chia sẻ của các bạn!
với tâm điểm "Chia sẻ là đam mê"
Bạn đọc quan tâm củng cố lại kiến thức về Blackbox Testing (BBT) http://learningtesting-13.blogspot.com/2014/08/black-box-testing.html
translate
Hôm nay đọc gì
-
Purpose: 1 Understand CAR and CAR process 2 Responsibilities of DPC, DP Teams 3 How to conduct Causal Analysis meeting and identify prev...
-
I. Quy trình quản lý bug I.1 Vòng đời bugs I.2 Trạng thái bugs 1. NEW bug vừa được post lên hệ thống. bugzilla request email đến thàn...
Nhãn
automation testing
bài toán về phân tích giá trị biên
bai-tap-viet-tc-giao-dien
blackbox-testing
bugzilla
checklist
cong-cu-test-hieu-nang
GUI
hacker
jira
jmeter
kiem thu phan mem
kiem-thu-phan-mem-cho-nguoi-moi
kỹ thuật khai thac lỗ hổng xss
manual testing
mau-viet-test-case
quan-ly-bug-trong-mot-du-an-nhu-the-nao
sai-lam-hoc-tester
Sql injection
tao-kich-ban-dang-nhap-bang-selenium-ide
usability testing