Lựa chọn câu để xem lời giải nhanh hơn

30.1

Mục đích của kiểm thử chương trình là gì?

A. Để tự động sửa lỗi chương trình.

B. Để tìm ra lỗi của chương trình.

C. Để tìm ra lỗi và tự động sửa lỗi chương trình.

D. Để tìm ra lỗi và phòng ngừa, ngăn chặn các lỗi phát sinh trong tương lai

Phương pháp giải:

Kiểm thử (test) có nghĩa là kiểm tra và chạy thử       

Có rất nhiều phương pháp và công cụ khác nhau để kiểm thử chương trình. Các công cụ này không những có mục đích tìm ra lỗi của chương trình mà còn có tác dụng phòng ngừa và ngăn chặn các lỗi phát sinh tiếp trong tương lai.

Lời giải chi tiết:

Mục đích của kiểm thử chương trình là:

D. Để tìm ra lỗi và phòng ngừa, ngăn chặn các lỗi phát sinh trong tương lai.

30.2

Để kiểm thử một chương trình bạn An đã tạo ra rất nhiều bộ dữ liệu test. Với tất cả các bộ dữ liệu test chương trình đều chạy đúng. Có thể kết luận chương trình hết lỗi hay chưa?

Phương pháp giải:

Kiểm thử không có chức năng chứng minh chương trình chạy đúng với mọi bộ dữ liệu.

Lời giải chi tiết:

Chưa. Kiểm thử chỉ có chức năng phát hiện lỗi (nếu có) ứng với các bộ dữ liệu test, không có chức năng chứng minh chương trình chạy đúng với mọi bộ dữ liệu.

30.3

Nếu chương trình chạy bị lỗi với 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? Chọn phương án đúng nhất.

A. Đây là lỗi không thể sửa được.

B. Đây là lỗi chia cho 0, em cần xoá lệnh này khỏi chương trình.

C. Đây là lỗi chia cho 0, em cần thay thế phép toán khác để không xảy ra lỗi này nữa.

D. Đây là lỗi chia cho 0, em cần tìm hiểu nguyên nhân vì sao lại xuất hiện 0 khi chia, có thể bổ sung lệnh kiểm tra trước khi thực hiện phép chia.

Phương pháp giải:

ZeroDivisionError: Lỗi này xảy ra khi thực hiện phép chia cho giá trị 0

Lời giải chi tiết:

Nếu chương trình chạy bị lỗi với thông báo lỗi là ZeroDivisionError

Chọn phương án đúng nhất.

D. Đây là lỗi chia cho 0, em cần tìm hiểu nguyên nhân vì sao lại xuất hiện 0 khi chia, có thể bổ sung lệnh kiểm tra trước khi thực hiện phép chia.

30.4

Đ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ì?

A. Đó là vị trí chương trình chạy tới đó thì kết thúc.

B. Đó là vị trí chương trình dừng lại đề người lập trình quan sát phát hiện lỗi.

C. Đó là vị trí chương trình mỗi khi chạy đến dòng lệnh đó sẽ kêu pip pip.

D. Đó là vị trí chương trình tạm dừng, người lập trình sẽ quan sát các biến của chương trình và có thể điều khiển để chương trình tiếp tục chạy.

Phương pháp giải:

Công cụ break point cho phép tạo ra các "điểm dừng" bên trong chương trình. Khi chạy, chương trình sẽ tạm dừng lại tại các "điểm dừng" cho phép người kiểm thử có thể quan sát các thông tin khác bên trong chương trình, qua đó kiểm tra tính đúng đắn của chương trình.

Lời giải chi tiết:

Đ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ì?

D. Đó là vị trí chương trình tạm dừng, người lập trình sẽ quan sát các biến của chương trình và có thể điều khiển để chương trình tiếp tục chạy.

30.5

Bộ dữ liệu kiểm thử (test) có những tính chất gì?

A. Tính chất phát hiện lỗi của chương trình.

B. Cần có càng nhiều càng tốt.

C. Cần được sinh ngẫu nhiên và phủ kín các trường hợp biên của dữ liệu đầu vào bài toán.

D. Không cần có tính chất gì.

Phương pháp giải:

- Bộ dữ liệu kiểm thử (test) cần được sinh ngẫu nhiên và phủ kín các trường hợp biên của dữ liệu đầu vào bài toán

- Các bộ test có thể có đầu vào theo các tiêu chí khác nhau như độ lớn và tính đa dạng của dữ liệu

Lời giải chi tiết:

Bộ dữ liệu kiểm thử (test) có những tính chất

C. Cần được sinh ngẫu nhiên và phủ kín các trường hợp biên của dữ liệu đầu vào bài toán.

30.6

Giả sử đầu vào của dữ liệu bài toán là vùng {x > 0}. Khi đó dữ liệu ở vùng biên là những dữ liệu nào?

A. x=0.                       

B.x= 1000000.

C. x ở gần 0.               

D. x ở gần 0 hoặc x rất lớn.

Phương pháp giải:

Thực tế cho thấy thường phát sinh lỗi tại các vùng biên hoặc lân cận của biên.

Lời giải chi tiết:

Giả sử đầu vào của dữ liệu bài toán là vùng {x > 0}. Khi đó dữ liệu ở vùng biên là những dữ liệu

D. x ở gần 0 hoặc x rất lớn.

30.7

Phần mềm soạn thảo lập trình có thể tạo bao nhiêu điểm dừng?

A. 0.                                       

B. 1.

C. Không hạn chế.                 

D. 10.

Phương pháp giải:

Công cụ break point cho phép tạo ra các "điểm dừng" bên trong chương trình. Khi chạy, chương trình sẽ tạm dừng lại tại các "điểm dừng" cho phép người kiểm thử có thể quan sát các thông tin khác bên trong chương trình, qua đó kiểm tra tính đúng đắn của chương trình.

Lời giải chi tiết:

Phần mềm soạn thảo lập trình có thể tạo số điểm dừng

C. Không hạn chế.

30.8

Các phương pháp nào dưới đây được coi là phương pháp kiểm thử chương trình?

A. In các dữ liệu trung gian.

B. Viết chú thích chi tiết trong chương trình.

C. Sinh các bộ dữ liệu test để kiểm tra chương trình.

D. Đặt tên biến và hàm có ý nghĩa.

E. Tạo điểm dừng để quan sát và phát hiện lỗi chương trình.

F. Ghi nhớ các mã lỗi ngoại lệ khi phát sinh.

Phương pháp giải:

Một số phương pháp đơn giản kiểm thử chương trình bao gồm:

1. Quan sát mã lỗi ngoại lệ để biết lỗi gì.

2. Thiết lập các bộ dữ liệu test để kiểm thử chương trình.

3. In các thông số trung gian.

4. Sử dụng công cụ điểm dừng của phần mềm lập trình.

Lời giải chi tiết:

Các phương pháp được coi là phương pháp kiểm thử chương trình

A. In các dữ liệu trung gian.

C. Sinh các bộ dữ liệu test để kiểm tra chương trình.

E. Tạo điểm dừng để quan sát và phát hiện lỗi chương trình.

30.9

Viết chương trình nhập số n, sau đó lần lượt nhập n số của dãy. Yêu cầu khi nhập vào các số sẽ được sắp xếp ngay theo thứ tự tăng dần. Viết chương trình sau đó thực hiện các công việc kiểm thử.

Phương pháp giải:

Vận dụng kiến thức đã học để viết chương trình

Lời giải chi tiết:

Chương trình có thể viết như sau:

30.10

Chương trình sau sẽ yêu cầu nhập một danh sách học sinh trong lớp cùng với cân nặng, chiều cao, sau đó tự động tính chỉ số BMI và in ra danh sách các bạn béo phì. Quan sát chương trình và đưa thêm các lệnh in giá trị trung gian để kiểm soát lỗi chương trình.

Phương pháp giải:

Vận dụng kiến thức đã học để viết chương trình

Lời giải chi tiết:

Chương trình có thể viết như sau: