[toc:ul]
- Quan sát mã lỗi Runtime và bắt lỗi ngoại lệ: Giúp kiểm tra vị trí dòng lệnh sinh ra lỗi này, từ đó phân tích, tìm và sửa lỗi.
- Kiểm thử chương trình với các bộ dữ liệu test:
- In các thông số trung gian: Thông qua các giá trị trung gian trong quá trình thực hiện chương trình, nếu kết quả cuối cùng có lỗi thì sẽ dễ tìm ra lỗi đó.
- Sử dụng công cụ breakpoint (điểm dừng): cho phép tạo ra các điểm dừng bên trong chương trình, giúp người kiểm thử có thể quan sát, kiểm tra tính đúng đắn của chương trình.
- Cách 1: In các giá trị trung gian để kiểm soát chương trình
- Cách 2: Sử dụng công cụ tạo điểm dừng của phần mềm soạn thảo lập trình.
Với phần mềm soạn thảo lập trình Wingware, các bước trên như sau:
Luyện tập 1:
Đây là lỗi chia cho 0. Nếu gặp lỗi này cần tìm ra vị trí gây lỗi để biết phép tính nào tạo ra phép chia cho 0. Sau đó sẽ tiến hành các biện pháp xử lí lỗi ngay trong chương trình, ví dụ chỉ cho phép thực hiện phép chia khi mẫu số khác 0.
Luyện tập 2:
Chương trình trên có lỗi do khi nhập dữ liệu từ bàn phím chưa thực hiện chuyển đổi sang số nguyên. Cần sửa lại hai câu lệnh đầu như sau:
Đáp án trắc nghiệm:
Câu 1 | Câu 2 | Câu 3 | Câu 4 | Câu 5 |
D | D | D | D | C |
Vận dụng 1:
Chương trình trên lỗi tại dòng lệnh thứ 4 (lệnh while j > 1 and A[j] < A[j - 1]:)
Sửa lại dòng lệnh này như sau: while j > 0 and A[j] < A[j - 1]:
Vận dụng 2:
Không đảm bảo hết lỗi. Việc kiểm tra chương trình bằng các bộ dữ liệu test càng nhiều sẽ càng làm tăng độ tin cậy của chương trình nhưng vẫn chưa đảm bảo tìm ra hết lỗi của chương trình, hay nói cách khác chưa chứng minh được rằng chương trình đúng.