I. LỖI TRONG CHƯƠNG TRÌNH VÀ KIỂM THỬ
Hoạt động 1:
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ể.
II. TRUY VẾT VỚI CÁCH BỔ SUNG CÂU LỆNH THEO DÕI KẾT QUẢ TRUNG GIAN
Hoạt động 2:
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.
III. TRUY VẾT VỚI CÔNG CỤ GỠ LỖI CỦA NGÔN NGỮ LẬP TRÌNH
- Trên cửa sổ Debug Control có phần hiển thị thông tin về giá trị các biến trong chương trình.
- Các thao tác để kích hoạt chế độ gỡ lỗi (SGK -tr113)
+ Trên cửa sổ Shell, mở file chương trình cần gỡ lỗi.
+ Chọn Debug chọn Debugger. Cửa sổ Debug Control xuất hiện.
+ Chọn Run Module (hoặc F5) để bắt đầu chạy chương trình.
+ Chọn Step để quan sát sự thay đổi các biến. Từ đó tìm lỗi sai.
Ví dụ: