Kiểm thử và gỡ lỗi chương trình
Kiểm thử dùng dữ liệu để phát hiện lỗi; gỡ lỗi dùng giá trị trung gian và điểm dừng để khoanh vùng nguyên nhân.
Hiểu bài
Kiểm thử và gỡ lỗi
Kiểm thử là chạy chương trình với các bộ dữ liệu để tìm lỗi; gỡ lỗi là xác định và khắc phục lỗi. Một chương trình không phát sinh ngoại lệ vẫn có thể cho kết quả sai, vì vậy cần chọn dữ liệu kiểm thử đại diện, dữ liệu đặc biệt và dữ liệu biên.
Một cách gỡ lỗi đơn giản là chèn print() để in các biến trung gian. Nếu đầu vào là $(x_1,\ldots,x_n)$, đầu ra là $(a_1,\ldots,a_m)$ và chương trình dùng các biến trung gian $(y_1,\ldots,y_k)$, việc quan sát các giá trị $y_i$ giúp kiểm tra từng bước xử lí.
Ví dụ tính ước chung lớn nhất của m và n bằng phép trừ lặp có thể in m, n trước mỗi vòng. Với dữ liệu m=20, n=16, bảng theo dõi ghi các trạng thái: $(20,16)$, $(4,16)$, $(4,12)$, $(4,8)$ rồi kết thúc ở $(4,4)$.
Bảng theo dõi biến qua các vòng lặp SGK trang 148
Công cụ debug còn cho phép thiết lập điểm dừng, chạy chương trình đến điểm đó và quan sát biến tại từng bước.
