Bài 16. Kiểm thử và gỡ lỗi chương trình
Môn học: Tin Học; Lớp: 10
Thời gian thực hiện: 2 tiết I. MỤC TIÊU
1. Kiến thức:
- Biết và khắc phục được một số lỗi thường gặp khi viết chương trình
- Biết cách sử dụng công cụ gỡ lỗi trong Python để truy vết tìm lỗi nhằm sửa lỗi trong chương trình.
2. Năng lực:
- Năng lực chung:
+ Giải quyết được những nhiệm vụ học tập một cách độc lập, theo nhóm và thể hiện sự sáng tạo.
+ Góp phần phát triển năng lực giao tiếp và hợp tác qua hoạt động nhóm và trao
đổi công việc với giáo viên.
+ Năng lực tự chủ và tự học trong tìm tòi khám phá.
- Năng lực riêng:
+ HS bước đầu tìm lỗi, sửa lỗi, điều chỉnh lại chương trình đơn giản.
+ Biết thêm được phương pháp tìm lỗi bằng truy vết với hai cách: (1) Bổ sung câu
lệnh theo dõi kết quả trung gian; (2) Dùng công cụ gỡ lỗi của phần mềm ngôn ngữ.
3. Phẩm chất:
- Nghiêm túc, tập trung, tích cực chủ động.
II. THIẾT BỊ DẠY HỌC VÀ HỌC LIỆU 1. Giáo viên
- Sách giáo khoa, sách giáo viên, giáo án.
- Máy tính có kết nối với máy chiếu. 2. Học sinh - Sách giáo khoa, vở ghi.
- Kiến thức đã học.
- Đọc và tìm hiểu trước bài mới – Bài 16. Kiểm thử và gỡ lỗi chương trình.
III. TIẾN TRÌNH DẠY HỌC
1. HOẠT ĐỘNG KHỞI ĐỘNG (MỞ ĐẦU)
a. Mục tiêu: Tạo hứng thú học tập cho học sinh
b. Nội dung: HS suy nghĩ, trả lời câu hỏi khởi động.
c. Sản phẩm: HS trả lời được câu hỏi.
d. Tổ chức thực hiện:
* Bước 1: Chuyển giao nhiệm vụ: - GV đặt vấn đề:
Có những chương trình còn lỗi vì khi thực hiện cho ra kết quả sai. Theo en,
việc biết giá trị của một số biến ngay sau khi mỗi câu lệnh được thực hiện có thể
giúp tìm ra lỗi của chương trình hay không?
- GV yêu cầu HS thảo luận nhóm đôi để trả lời câu hỏi trên.
* Bước 2: Thực hiện nhiệm vụ:
- HS quan sát và chú ý lắng nghe, thảo luận nhóm đôi hoàn thành yêu cầu.
* Bước 3: Báo cáo, thảo luận:
- GV gọi một số HS trả lời, HS khác nhận xét, bổ sung.
Câu trả lời: Việc biết giá trị của một số biến ngay sau khi mỗi câu lệnh được thực
hiện sẽ cho em biết câu lệnh đó có cho kết qua đúng như em mong muốn hay
không, do vậy có thể giúp em tìm ra lỗi của câu lệnh, tìm ra lỗi của chương trình.
* Bước 4: Kết luận, nhận định:
- GV đánh giá kết quả của HS, trên cơ sở đó dẫn dắt HS vào bài học mới – Bài 16.
Kiểm thử và gỡ lỗi chương trình.
2. HÌNH THÀNH KIẾN THỨC MỚI
Hoạt động 1: Tìm hiểu lỗi trong chương trình và kiểm thử
a. Mục tiêu: Biết phát hiện lỗi, sửa lỗi trong chương trình
b. Nội dung: HS đọc SGK, nghe giảng, thực hiện các nhiệm vụ được giao, suy nghĩ trả lời câu hỏi.
c. Sản phẩm: HS hình thành được kiến thức bài học về lỗi trong chương trình và kiểm thử.
d. Tổ chức thực hiện:
Hoạt động của giáo viên và học
Sản phẩm dự kiến sinh
1. Lỗi trong chương trình và kiểm thử
* Bước 1: Chuyển giao nhiệm
* Hoạt động 1: vụ:
Chương chạy có thể có lỗi.
- GV yêu cầu HS trả lời Hoạt * Kết luận: động 1.
- Gỡ lỗi: là quá trình xác định lỗi và sửa lỗi.
- GV cho HS một ví dụ đơn giản
- Khi lập trình thường gặp các lỗi sau: khi lỗi.
• Lỗi cú pháp: là lỗi câu lệnh viết không - GV giới thiệu về thuật ngữ "gỡ
theo đúng quy định của ngôn ngữ. lỗi".
Ví dụ: Thiếu hoặc thừa dấu ngoặc, tên biến - GV cho HS tìm hiểu nội dung sai.
SGK và trả lời câu hỏi:
• Lỗi ngoại lệ: (Exceptions Error) còn gọi là Nêu các loại lỗi thường gặp của
lỗi Runtime, là lỗi xảy ra khi chương trình người lập trình?
đang chạy, một lệnh nào đó không thể thực - GV cho Ví dụ để phân tích: nếu hiện được.
chỉ đọc chương trình thì khó có
Lưu ý: Lỗi này không được thông báo ngay thể tìm ra lỗi, nếu chỉ chạy trên màn hình.
chương trình với 1 bộ dữ liệu đầu
• Lỗi ngữ nghĩa (lỗi logic): là lỗi mặc dù vào thì có thể không tìm ra loại lỗi
các câu lệnh viết đúng quy định của ngôn ngữ nghĩa.
ngữ nhưng sai thao tác xử lí nào đó. Đây là Từ đó thấy được sự cần thiết phải
loại lỗi rất khó phát hiện.
xây dựng những bộ dữ liệu kiểm
Ví dụ: Nhầm tên biến, gọi hàm có tham số thử.
không đúng kiểu, thiếu câu lệnh, ...
- GV đặt câu hỏi gợi mở:
- Ví dụ phân tích:
+ Có nên lấy tất cả các bộ dữ liệu
Xét chương trình ở Hình 1a, chương vào một cách ngẫu nhiên không?
trình này thực hiện yêu cầu nhập vào hai số + Có thể không cần kiểm thử
nguyên p, q và danh sách a gồm các số trường hợp đặc biệt của bài toán
nguyên, sau đó đưa ra max{│ai│, i = p, p + vì nó rất hiếm khi xảy ra, quan
1, …, q}. Biết rằng các phần tử của danh điểm đó có đúng không?
sách a được đánh chỉ số bắt đầu từ 0 và 0 ≤ + Tạo ra các bộ dữ liệu để kiểm p ≤ q < len(a)
thử, ta có cần biết kết quả đúng
tương ứng hay không?
- HS suy nghĩ trả lời, từ đó: Nêu
các dữ liệu kiểm thử chia thành những nhóm nào?
- GV chuẩn hóa kiến thức.
Hình 1a. Chương trình cần kiểm thử và tìm
- GV chú ý: bộ kiểm thử chỉ cho lỗi
thấy chương trình còn lỗi, việc
xác định lỗi ở đâu thì chúng ta sẽ
học sang mục tiếp theo để tìm
Hình 1b. Kết quả đúng
hiểu một số cách xác định lỗi.
* Bước 2: Thực hiện nhiệm vụ:
- HS theo dõi SGK, chú ý nghe,
tiếp nhận kiến thức, hoàn thành
Hình 1c. Kết quả sai
các yêu cầu, thảo luận nhóm. Giải thích
- GV quan sát, hỗ trợ nếu cần
• Với đầu vào p = 1, q = 4 (Hình 1b), dãy
Giáo án Tin học 10 Bài 16 (Cánh diều): Kiểm thử và gỡ lỗi chương trình
819
410 lượt tải
MUA NGAY ĐỂ XEM TOÀN BỘ TÀI LIỆU
CÁCH MUA:
- B1: Gửi phí vào TK:
0711000255837
- NGUYEN THANH TUYEN - Ngân hàng Vietcombank (QR) - B2: Nhắn tin tới Zalo VietJack Official ( nhấn vào đây ) để xác nhận thanh toán và tải tài liệu - giáo án
Liên hệ ngay Hotline hỗ trợ: 084 283 45 85
Bộ giáo án Tin học 10 Cánh diều được cập nhật liên tục trong gói này từ nay đến hết tháng 6/2023.
Để tải tài liệu gốc về máy bạn click vào nút Tải Xuống ở trên!
Thuộc bộ (mua theo bộ để tiết kiệm hơn):
- Bộ giáo án Tin học 10 Cánh diều năm 2023 mới, chuẩn nhất được thiết kế theo phong cách hiện đại, đẹp mắt, trình bày chi tiết cho từng bài học và bám sát chương trình Sách giáo khoa Tin học 10 Cánh diều.
- Mua trọn bộ sẽ tiết kiệm hơn tải lẻ 50%.
Đánh giá
4.6 / 5(819 )5
4
3
2
1
Trọng Bình
Tài liệu hay
Giúp ích cho tôi rất nhiều
Duy Trần
Tài liệu chuẩn
Rất thích tài liệu bên VJ soạn (bám sát chương trình dạy)
TÀI LIỆU BỘ BÁN CHẠY MÔN Tin Học
Xem thêmTÀI LIỆU BỘ BÁN CHẠY Lớp 10
Xem thêmTài liệu bộ mới nhất
Đây là bản xem thử, vui lòng mua tài liệu để xem chi tiết (có lời giải)
Bài 16. Kiểm thử và gỡ lỗi chương trình
I MỤC TIÊU
1. Kiến thức:
!"#$%&'()*#+#,-.
/'01!!2)*-3453"6-75.%)*8%'0)*
-3#,-.
2. Năng lực:
Năng lực chung:
9:;<75"#$=%!>%&/"&)>?@3A%6
''/B3
9:AC/-6D)3$/<73B"&A%-3
"E/3F
9GD)H-3.%I/%/
- Năng lực riêng:
9JK#"C7.%)*?'0)*?"L7M)B#,-.",;
9F%"#$#,/.%)*K8-75/NOE'7P7
)@31Q<7;-7NORS!2)*HC%L%=
3. Phẩm chất:
- GF%T?>-7?UH"&
II THIẾT BỊ DẠY HỌC VÀ HỌC LIỆU
1. Giáo viênA
J//33?'//3F?/3/
/5UA(%/57V
2. Học sinhA
J//33?W
Mọi thắc mắc vui lòng xin liên hệ hotline: 084 283 45 85
Đây là bản xem thử, vui lòng mua tài liệu để xem chi tiết (có lời giải)
XY"Z
[.%67-#K%\Bài 16. Kiểm thử và gỡ lỗi chương trình.
III TIẾN TRÌNH DẠY HỌC
1. HOẠT ĐỘNG KHỞI ĐỘNG (MỞ ĐẦU)
a. Mục tiêu:B3YT>3'
b. Nội dung:J'75]?-;)P7^W"&
c. Sản phẩm:J-;)"#$P7^
d. Tổ chức thực hiện:
* Bước 1: Chuyển giao nhiệm vụ:
:_"+`"L
Có những chương trình còn lỗi vì khi thực hiện cho ra kết quả sai. Theo en,
việc biết giá trị của một số biến ngay sau khi mỗi câu lệnh được thực hiện có thể
giúp tìm ra lỗi của chương trình hay không?
:_5F7C7J;3)7>A%""6-;)P7^-F
* Bước 2: Thực hiện nhiệm vụ:A
- J<7'/Ta) @?;3)7>A%"35F7C7
* Bước 3: Báo cáo, thảo luận:A
- :_%&'(J-;)?J/>bc?KE'7
Câu trả lời: Việc biết giá trị của một số biến ngay sau khi mỗi câu lệnh được thực
hiện sẽ cho em biết câu lệnh đó có cho kết qua đúng như em mong muốn hay
không, do vậy có thể giúp em tìm ra lỗi của câu lệnh, tìm ra lỗi của chương trình.
* Bước 4: Kết luận, nhận định:A
- :_"//<7;HJ?-F,'W"A1d1 J3K%\Bài 16.
Kiểm thử và gỡ lỗi chương trình.
2. HÌNH THÀNH KIẾN THỨC MỚI
Hoạt động 1: .%67)*-3#,-.6%0
a. Mục tiêu: /)*?'0)*-3#,-.
Mọi thắc mắc vui lòng xin liên hệ hotline: 084 283 45 85
Đây là bản xem thử, vui lòng mua tài liệu để xem chi tiết (có lời giải)
b. Nội dung:J"J:X?@;?/%!"#$3?'75
]-;)P7^
c. Sản phẩm: J."#$YKL)*-3#,-.
6%0
d. Tổ chức thực hiện:
Sản phẩm dự kiến
Hoạt động của giáo viên và học
sinh
1. Lỗi trong chương trình và kiểm thử
* Hoạt động 1:
e#,B5A6A)*
* Kết luận:
:2)*)<7/-.b/"f)*'0)*
X)>-.#+/)*'7
• Lỗi cú pháp: ))*P7)
@3"T<75"fH=
_U1!73+g1`73+?FK
'
• Lỗi ngoại lệ: (hb@3'h--3-OI)
)*i7%@?))*b;5-#,-.
"B5?%&)3"A6
"#$
#7a*5"#$K/35
-F%.
• Lỗi ngữ nghĩa (lỗi logic): ))*%+1S
/P7)"T<75"fH
=#'3/b0)U3"A[P5)
* Bước 1: Chuyển giao nhiệm
vụ: A
:_ 5F7 C7 J -; )V3B
"&VV
:_3J%&U1!",;
)*
:_7L7>=j2
)*j
:_3J.%67&17
J:X-;)P7^
Nêu các loại lỗi thường gặp của
người lập trình?
:_3_U1!"6PU7
M"#,-..AA
6 .% - )*? 7 M B5
#,-.K&1=)7"C7
3.A6.%-)3B)*
=]
g"A`5"#$'C;
Mọi thắc mắc vui lòng xin liên hệ hotline: 084 283 45 85
Đây là bản xem thử, vui lòng mua tài liệu để xem chi tiết (có lời giải)
)3B)*-`A/
_U1!GC%FK?%A%'(
"T67?7P7)?
- Ví dụ phân tích:
kc#,-. W Hình 1a?#,
-.55F7C7>3'(
75F?<1'/l% /'(
75F?'7"A"#-%bmnn?o?9
?p?<q-8/C0H1
'/"#$"/M'(K "C7gr
r<s)@NO
Hình 1a. Chương trình cần kiểm thử và tìm
lỗi
Hình 1b. Kết quả đúng
Hình 1c. Kết quả sai
Giải thích
t_"C73o?<ouN.KO?1Z5
bP51=K&1=)76%
0
:_"+P7^$%W
9VCó nên lấy tất cả các bộ dữ liệu
vào một cách ngẫu nhiên không?
+ Có thể không cần kiểm thử
trường hợp đặc biệt của bài toán
vì nó rất hiếm khi xảy ra, quan
điểm đó có đúng không?
+ Tạo ra các bộ dữ liệu để kiểm
thử, ta có cần biết kết quả đúng
tương ứng hay không?
J'75]-;)?g"AVNêu
các dữ liệu kiểm thửFchia thành
những nhóm nào?
:_7vAY
:_TaK&6%0M3
`5 #, -. I )*?
b/"f)*W"P7.T'w
' %! @3 "6 .%
67%&'(/b/"f)*
* Bước 2: Thực hiện nhiệm vụ: A
J@31QJ:X?Ta@?
>Y?3
/5F7C7?;3)7>A%
:_ <7'/? *-$ 7C
Mọi thắc mắc vui lòng xin liên hệ hotline: 084 283 45 85
Đây là bản xem thử, vui lòng mua tài liệu để xem chi tiết (có lời giải)
3"#$bc)xyz?Fx)"//
"T?)'(A/-f75"()`-3
1Z53"A
t_"C73o?<ouN.O?1Z5
3"#$bc)yz?"//"T;)
z
_"])B#,-."6.%)*M
U$/#,-. ?",
;
-#)>-.H==
)>-.K>3A!*-$3
#1S.%)*
e/)*=]MA6/
<7<7'/<7;#,
-./K&1=)73N/K&@'O
/7
[66%-U"T" H#,
-.'35F7C7H"LK?-#C
7vKf/K&1=)73R=)76%
0;S$/-K7&"Z3
{A%
tX6%0=-#$#+
-3
tX6%0=-#$"+KNU
1!?1'/MK3l%%&C
* Bước 3: Báo cáo, thảo luận: A A
:_J/K67?)FK;
-.K5
&'(J/>bc?KE
'7
* A Bước A 4: A Kết A luận, A nhận A định:
:_>bc?7v6Y
Mọi thắc mắc vui lòng xin liên hệ hotline: 084 283 45 85