nhà kiểm thử tiến hành 1 số đo về độ phức tạp lô gic của các thủ tục và số đo này được sử dụng để giúp cho việc định nghĩa các lộ trình cơ bản sao cho các lệnh trong chương trình được[r]
(1)PHẦN V:
KIỂM THỬ VÀ BẢO TRÌ
I Kiểm thử
1 Khái niệm kiểm thử Phương pháp thử
3 Kỹ thuật thiết kế trường hợp thử Kiểm thử module
5 Kiểm thử hệ thống Kiểm thử chấp nhận
II Bảo trì
1
1 Khái niệm kiểm thử
• Là mấu chốt đảm bảo chất lượng
phần mềm
• Là tiến trình (và nghệ thuật) nhằm
phát lỗi việc xem xét lại đặc tả, thiết kế mã nguồn
• Kiểm thử thành cơng phát
lỗi; kiểm thử không phát lỗi kiểm thử dở
(2)Khó khăn
• Nâng cao chất lượng phần mềm không
vượt chất lượng thiết kế: phát lỗi tiềm tàng sửa chúng
• Phát lỗi bị hạn chế thủ cơng
• Dễ bị ảnh hưởng tâm lý kiểm thử
• Khó đảm bảo tính đầy đủ kiểm thử
3
Lưu ý kiểm thử
1 Chất lượng phần mềm khâu thiết kế định chủ yếu, khơng phải khâu kiểm thử
2 Tính dễ kiểm thử phụ thuộc vào cấu trúc chương trình Người kiểm thử người phát triển nên khác
(3)kiểm thử
5
Đối tượng phạm vi
Đặc tả chức năng/ Thiết kế lơ gíc
Thiết kế Vật lý
Cấu trúc chương trình và đặc tả module
Mã hố module chương trình
Kiểm thử chấp nhận
Kiểm thử hệ thống
Kiểm thử tích hợp Kiểm thử đơn vị
chương trình
Kiểm thử hồi quy
2.1 Kiểm thử tĩnh
• Kiểm thử bàn: giấy bút
bàn, kiểm tra logic, lần chi tiết sau lập trình xong
• Đi xuyên suốt (walk through)
• Thanh tra (inspection)
(4)2.2 Kiểm thử máy
• Gỡ lỗi máy (machine debug) hay kiểm thử
động: Dùng máy chạy chương trình để điều tra trạng thái động tác chương trình
• bước trình tự kiểm thử máy:
7
Trình tự kiểm thử máy
1 Thiết kế trường hợp thử theo thử bàn
2 Trường hợp thử phải có kết kỳ vọng thu
3 Dịch chương trình nguồn tạo module tải để thực
5 Nhập liệu thiết kế cho trường hợp kiểm thử Điều chỉnh môi trường
(5)3 Kỹ thuật thiết kế trường hợp thử
• Kỹ thuật thiết kế trường hợp thử dựa đặc tả
bề chương trình: Kiểm thử hộp đen (Black box test): WHAT ?
• Kỹ thuật thiết kế trường hợp thử dựa đặc tả
bên chương trình: Kiểm thử hộp trắng (white box test): HOW ?
• Kiểm thử Top-Down hay Bottom-Up
9
3.1 Kiểm thử hộp đen
• Phân đoạn tương đương
• Phân tích giá trị biên
• Đốn lỗi
• Và số kỹ thuật khác
10 Black Box
Results Input
(6)a Phương pháp phân đoạn tương đương (Equivalence Partition)
• Mục đích: giảm số lượng test cách chọn
tập liệu đại diện
• Thực hiện: Chia kiệu vào thành đoạn,
đoạn đại diện cho số liệu => việc kiểm thử thực đại diện
• Ưu điểm: Test theo mức trừu tượng
trường
• Áp dụng: hình, menu hay mức q trình
• Ví dụ:
11
b Phương pháp phân tích giá trị biên (Boundary value analysis)
• Là trường hợp riêng phân đoạn
• Thí dụ: miền liệu tháng giá trị hay
>12 không hợp lệ
(7)(Error Guessing)
• Dựa vào trực giác kinh nghiệm
• Thí dụ lỗi chia cho Nếu module có phép chia
thì phải kiểm thử lỗi
• Nhược điểm: khơng phát hết lỗi
13
d Phương pháp đồ thị nguyên nhân - kết (Cause-effect Graphing)
14
SEQUENCE
NOT
OR DO UNTIL
(8)3.2 Kiểm thử hộp trắng
• Là phương pháp kiểm thử dựa vào cấu trúc điều
khiển thủ tục để thiết kế trường hợp kiểm thử
15
Results Input
White Box Data Testing Strategy
Kiểm thử hộp trắng (tiếp)
• Người KSPM đảm bảo:
– Kiểm tra tất lộ trình độc lập bên mơ đun lần
– Kiểm tra tất nhánh đúng/sai lựa chọn
(9)a Kiểm thử theo lộ trình
• Là kỹ thuật Tom McCabe đề xuất cho phép
nhà kiểm thử tiến hành số đo độ phức tạp lô gic thủ tục số đo sử dụng để giúp cho việc định nghĩa lộ trình cho lệnh chương trình thực lần q trình kiểm thử
• Sử dụng Ký pháp đồ hoạ luồng/ đồ thị chương
trình:
– Mỗi nút đồ thị biểu diễn lệnh/ dãy lệnh liên tiếp
– Cung đồ thị biểu diễn luồng điều kiện (trình tự thực hiện)
17
Ví dụ: lưu đồ khối chương trình
18
1
3
2
4
5
7
11
9
(10)Ví dụ: Đồ thị chương trình
19
1
6
2,
4,
7
11
9 10
1 3
2
4
Chú ý
• Một cung phải kết thúc nút (có
thể nút khơng tương ứng với lệnh thủ tục)
• Vùng bao cung nút gọi Region (khi