Slide bài giảng tin học 10 cánh diều bài 16 chủ đề F: Kiểm thử và gỡ lỗi chương trình
Slide điện tử bài 16 chủ đề F: Kiểm thử và gỡ lỗi chương trình. Trình bày với các hiệu ứng hiện đại, hấp dẫn. Giúp học sinh hứng thú học bài. Học nhanh, nhớ lâu. Có tài liệu này, hiệu quả học tập của môn Tin học 10 Cánh diều sẽ khác biệt
Bạn chưa đủ điều kiện để xem được slide bài này. => Xem slide bài mẫu
Tóm lược nội dung
BÀI 16: KIỂM THỬ VÀ GỠ LỖI CHƯƠNG TRÌNH (2 TIẾT)
KHỞI ĐỘNG
- GV yêu cầu HS thảo luận và trả lời: Khi có thông báo lỗi là ZeroDivisionError thì đó là lỗi gì và em cần sửa lỗi như thế nào?
NỘI DUNG BÀI HỌC GỒM
- Lỗi trong chương trình và kiểm thử
- Truy vết với cách bổ sung câu lệnh theo dõi kết quả trung gian
HÌNH THÀNH KIẾN THỨC
1. Lỗi trong chương trình và kiểm thử
- Các lập trình viên khi viết chương tình thường gặp các loại lỗi nào?
Nội dung ghi nhớ:
Chương trình chạy có thể có lỗi.
Kết luận:
Người lập trình thường gặp các loại lỗi như sau:
- Lỗi cú pháp là lỗi câu lệnh viết không theo đúng quy định của ngôn ngữ.
Ví dụ: Thiếu hoặc thừa dấu ngoặc, tên biến sai.
- Lỗi ngoại lệ (Exceptions Error, còn gọi là Runtime) là lỗi xảy ra khi chương trình đang chạy, một lệnh nào đó không thể thực hiện được.
Lỗi này không được thông báo ngay trên màn hình.
- Lỗi ngữ nghĩa (còn gọi là lỗi logic) là lỗi mặc dù các câu lệnh viết đúng quy định của ngôn ngữ nhưng sai trong thao tác xử lí nào đó.
Ví dụ: Nhầm tên biến, gọi hàm có tham số không đúng kiểu, thiếu câu lệnh,...
Ví dụ:
Kết quả sai:
Kết quả đúng:
Để kiểm tra tính đúng đắn của chương trình so với yêu cầu đề bài, cần chuẩn bị các bộ dữ liệu đầu vào. Dữ liệu kiểm thử phải phù hợp với các ràng buộc đã cho và chia thành 3 nhóm:
+ Kiểm thử những trường hợp thường gặp trong thực tế.
+ Kiểm thử những trường hợp đặc biệt.
+ Kiểm thử những trường hợp các tham số nhận giá trị lớn nhất có thể.
2. Truy vết với cách bổ sung câu lệnh theo dõi kết quả trung gian
- Để tìm lỗi ngữ nghĩa ta có cách nào?
Nội dung ghi nhớ:
Khi đọc kĩ lại chương trình ta không biết được là thực tế máy có thực hiện đúng ý muốn của người lập trình hay không. Có thể ở một bước nào đó kết quả không như mong muốn vì chủ quan mà ta không nhận thấy được.
Kết luận:
- Một cách tìm lỗi ngữ nghĩa là bổ sung vào chương trình những câu lệnh đưa ra các kết quả trung gian nhằm truy vết các xử lí của chương trình.
Ví dụ:
Kết quả kiểm thử cho thấy lỗi ở xác định miền cần tìm max.
C. HOẠT ĐỘNG LUYỆN TẬP
- Hoàn thành bài tập trắc nghiệm sau:
Câu 1: Hệ thống sẽ báo lỗi nào trong các lỗi sau?
A. Lỗi ngoại lệ (Exceptions Error)
B. Lỗi cú pháp
C. Lỗi ngữ nghĩa
D. Cả A và B
Câu 2: Công cụ Debug dùng để:
A. Chạy chương trình.
B. Lưu chương trình.
C. Mở chương trình.
D. Gỡ lỗi.
Câu 3: Có mấy loại lỗi khi lập trình?
A. 1
B. 2
C. 3
D. 4
Câu 4: Đâu là mô tả đúng về lỗi ngữ nghĩa?
A. lỗi câu lệnh viết không theo đúng quy định của ngôn ngữ lập trình.
B. lỗi mặc dù các câu lệnh viết đúng quy định của ngôn ngữ nhưng sai trong thao tác xử lí nào đó.
C. lỗi xảy ra khi chương trình đang chạy, một lệnh nào đó không thể thực hiện được. Lỗi này sẽ được thông báo ngay trên màn hình.
D. Đáp án khác.
Câu 5: Để kiểm thử những trường hợp thường gặp trong thực tế ta chọn bộ dữ liệu như thế nào?
A. Có kích thước đủ nhỏ.
B. Có kích thước lớn.
C. Có kích thước lớn nhất có thể.
D. Có kích thước bất kì.
Gợi ý đáp án:
Câu | 1 | 2 | 3 | 4 | 5 |
Đáp án | D | D | C | B | A |
D. HOẠT ĐỘNG VẬN DỤNG
Vận dụng kiến thức, GV yêu cầu HS trả lời câu hỏi:
Câu 1: Theo em điểm dừng (break point) trong các phần mềm soạn thảo lập trình có ý nghĩa gì?
Câu 2: Hãy tìm lỗi cho đoạn chương trình sau:
a=int(input()
print(a)