Bài giảng Công cụ kiểm thử phần mềm - Bài 3: Thiết kế kiểm thử phần mềm
Số ca có thể kiểm thử
Số ca kiểm thử
Giá trị hợp lệ: 199 x 199 = 39,601
0 99
-99 -1
Giá trị không hợp lệ: VÔ HẠN
>= 100
<=>=>
Không phải số
2Đặt vấn đề
Có vô số ca kiểm thử
Thời gian & Nhân lực giới hạn
Không thể kiểm thử tất cả
Cần phương pháp thiết kế phù hợp
Ít ca kiểm thử
Nhưng có khả năng phát hiện nhiều lỗi, độ
phủ lớn
Phân hoạch tương đương
Phân chia dữ liệu thành các lớp có cùng
hành vi
Tạo ca kiểm thử cho mỗi lớp tương
đương
Kiểm thử một giá trị đại diện của lớp
Nếu giá trị đại diện bị lỗi các giá trị trong
lớp đó cũng sẽ bị lỗi như vậy
Giảm số lượng ca kiểm thử, tăng độ phủ
Trang 1
Trang 2
Trang 3
Trang 4
Trang 5
Trang 6
Trang 7
Trang 8
Trang 9
Trang 10
Tải về để xem bản đầy đủ
Bạn đang xem 10 trang mẫu của tài liệu "Bài giảng Công cụ kiểm thử phần mềm - Bài 3: Thiết kế kiểm thử phần mềm", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
Tóm tắt nội dung tài liệu: Bài giảng Công cụ kiểm thử phần mềm - Bài 3: Thiết kế kiểm thử phần mềm
Bài 3 – Thiết kế kiểm thử phần mềm Công cụ kiểm chứng phần mềm Bài toán Kiểm thử Chương trình tính tổng 2 số nguyên, mỗi số có từ 1 đến 2 chữ số 1 Số ca có thể kiểm thử Số ca kiểm thử Giá trị hợp lệ: 199 x 199 = 39,601 0 99 -99 -1 Giá trị không hợp lệ: VÔ HẠN >= 100 <= -100 Không phải số 2 Đặt vấn đề Có vô số ca kiểm thử Thời gian & Nhân lực giới hạn Không thể kiểm thử tất cả Cần phương pháp thiết kế phù hợp Ít ca kiểm thử Nhưng có khả năng phát hiện nhiều lỗi, độ phủ lớn 3 PHÂN HOẠCH TƯƠNG ĐƯƠNG 4 Phân hoạch tương đương Phân chia dữ liệu thành các lớp có cùng hành vi Tạo ca kiểm thử cho mỗi lớp tương đương Kiểm thử một giá trị đại diện của lớp Nếu giá trị đại diện bị lỗi các giá trịtrong lớp đó cũng sẽ bị lỗi như vậy Giảm số lượng ca kiểm thử, tăng độ phủ 5 Phân hoạch tương đương 3 bước 1. Xác định các biến đầu vào và đầu ra (Input & Output) 2. Xác định lớp tương đương cho từng Input & Output 3. Xác định các ca kiểm thử 6 Bước 1. Xác định Input & Output Dựa vào đặc tả chương trình Ví dụ: Chương trình tính tổng 2 số Input: 2 số A B Output: Tổng SUM Thông báo lỗi 7 Bước 2. Xác định lớp tương đương Dựa vào điều kiện đầu vào/đầu ra Lớp tương đương (equivalence class) biểu diễn một tập hợp trạng thái Hợp lệ (valid) Không hợp lệ (invalid) Điều kiện Các lớp tương đương Các lớp tương đương hợo lệ không hợp lệ Có 1 đến 2 chữ số -99 99 Là số nguyên Là số nguyên Không phải số nguyên Tổng SUM SUM = A + B Thông báo lỗi Phân hoạch tương đương là một quá trình heuristic 8 Bảng tổng hợp lớp tương đương STT Input / Output Lớp tương đương EC1 -99 <= A <= 99 EC2 A < -99 A EC3 A > 99 EC4 A không phải là số nguyên EC5 -99 <= B <= 99 EC6 B < -99 B EC7 B > 99 EC8 B không phải là số nguyên EC9 = A+B SUM EC10 Thông báo lỗi 9 Một số nguyên tắc Điều kiện đầu Các lớp tương đương Các lớp tương đương vào/ đầu ra hợo lệ không hợp lệ Giá trị: A A Not A Dãy giá trị: [1..100] 1 100 Tập giá trị: {A,B,C} A, B, C Not {A, B, C} Boolean: là số nguyên Là số nguyên Không là số nguyên 10 Ví dụ Nhập vào số nguyên dương nhỏ hơn 100 C1: là số nguyên EC1: là số nguyên, valid EC2: không là số nguyên, invalid C2: [0, 100) EC3: 0 <= x <100, valid EC4: X < 0, invalid ẸC5: x >= 100, invalid Valid Là số nguyên, 0 <= X < 100 Invalid Là số nguyên, X < 0 Là số nguyên, X >= 100 Không phải là số nguyên (0 =100) 11 Ví dụ Chuỗi có 7 ký tự, ký tự đầu là chữ cái hoa Valid Length = 7, ký tự đầu hoa Invalid Length = 7, ký tự đầu không hoa Length < 7 Length > 7 12 Ví dụ Tọa độ điểm (x,y): 3 <= X <= 7, 5 <= Y <= 9 Valid 3 <= X <= 7 5 <= Y <= 9 Invalid X < 3 X > 7 Y < 5 Y > 9 13 Ví dụ Nhập chiều dài 3 cạnh, phân loại tam giác Điều kiện đầu ra Valid Tam giác thường Tam giác cân Tam giác đều Tam giác vuông Invalid Không phải tam giác 14 Bước 3. Xác định các ca kiểm thử Giả sử có 3 biến (X, Y, Z) Xét 1 lớp tương đương của biến (Ví dụ X) Lựa chọn 1 giá trị đại diện trong lớp tương đương của biến đó (X) làm giá trị kiểm thử Các biến khác (Y, Z) chọn giá trị đại diện trong lớp tương đương hợp lệ Nguyên tắc Phủ nhiều lớp tương đương hợp lệ có thể có của nhiều biến Tại một thời điểm Chỉ phủ 1 lớp tương tương không hợp lệ của 1 biến 15 Bảng tổng hợp lớp tương đương STT Input / Output Lớp tương đương Giá trị đại diện EC1 -99 <= A <= 99 10 EC2 A < -99 -102 A EC3 A > 99 102 EC4 A không phải là số nguyên Abc EC5 -99 <= B <= 99 9 EC6 B < -99 -200 B EC7 B > 99 200 EC8 B không phải là số nguyên 1.25 EC9 = A+B SUM EC10 Thông báo lỗi 16 Xác định các ca kiểm thử STT Lớp tương đương Input 1 (A) Input 2 (B) Output mong đợi EC1 -99 <= A <= 99 10 9 19 EC2 A < -99 -102 9 Thông báo lỗi EC3 A > 99 102 9 Thông báo lỗi EC4 A không phải là số nguyên Abc 9 Thông báo lỗi EC5 -99 <= B <= 99 10 9 19 EC6 B < -99 10 -200 Thông báo lỗi EC7 B > 99 10 200 Thông báo lỗi EC8 B không phải là số nguyên 10 1.25 Thông báo lỗi EC9 SUM = A+B 10 9 19 EC1 Thông báo lỗi -102 9 Thông báo lỗi 0 17 Bảng rút gọn các ca kiểm thử STT Lớp tương đương phủ Input 1 (A) Input 2 (B) Output mong đợi TC1 EC1. -99 <= A <= 99 10 9 19 EC5. -99 <= B <= 99 EC9. SUM = A+B TC2 EC2. A < -99 -102 9 Thông báo lỗi EC10. Thông báo lỗi TC3 EC3. A > 99 102 9 Thông báo lỗi TC4 EC4. A không phải là số nguyên Abc 9 Thông báo lỗi TC5 EC6. B < -99 10 -200 Thông báo lỗi TC6 EC7. B > 99 10 200 Thông báo lỗi TC7 EC8. B không phải là số nguyên 10 1.25 Thông báo lỗi 18 PHÂN TÍCH GIÁ TRỊ BIÊN 19 Phân tích Giá trị biên Thường phần lớn lỗi xảy ra ở giá trị biên Giả sử đặc tả chương trình: Input < 10 result: Error message 10 <= Input < 25 result: print “hello” Input >= 25 result: Error message Một số lỗi: Sai điều kiện biên (e.g. INPUT <= 25 thay vì < 25) Sai giá trị biên (e.g. INPUT < 52, thay vì 25) Ca kiểm thử: INPUT = 25 Phát hiện 2 lỗi INPUT = 54 Không phát hiện lỗi nào 20 Phân tích Giá trị biên Sử dụng khi các lớp tương đương có thứ tự Chọn các test case: Giá trị biên cho đầu vào Giá trị đầu vào cho ra các giá trị biên đầu ra 8* 1 9* - Partition’s Valid Inputs 2 5 LB+1 UB+1 Lower Boundary (LB) 3 Upper Boundary (UB) 6 LB-1 UB-1 21 4 7 Standard Boundary Value Analysis Số ca kiểm thử giá trị biên cho trường hợp có n biến f = 4n + 1 22 Robustness Testing Số ca kiểm thử giá trị biên cho trường hợp có n biến f = 6n + 1 23 Worst-case Testing Số ca kiểm thử giá trị biên cho trường hợp có n biến f = 5n 24 Robust Worst-case Testing Số ca kiểm thử giá trị biên cho trường hợp có n biến f = 7n 25 Bảng các ca kiểm thử trên giá trị biên STT Lớp tương đương Input 1 (A) Input 2 (B) Output mong đợi TC1 -99 9 90 TC2 -98 9 89 -99 <= A <= 99 TC3 98 9 107 TC4 99 9 108 TC5 A < -99 -100 9 Thông báo lỗi TC6 A > 99 100 9 Thông báo lỗi TC7 10 -99 89 TC8 10 -98 88 -99 <= B <= 99 TC9 10 98 108 TC10 10 99 109 TC11 B < -99 -10 -100 Thông báo lỗi TC12 B > 99 10 100 Thông báo lỗi 26
File đính kèm:
- bai_giang_cong_cu_kiem_thu_phan_mem_bai_3_thiet_ke_kiem_thu.pdf