MIT《Introduction to Computer Science and Programming》: Testing and Debugging

来源:互联网 发布:淘宝卖小样的正品店 编辑:程序博客网 时间:2024/05/18 03:59

1. testing

unit test: each piece of program independently(functions, classes)

integration: overall program

test suite: 1) small enough: we can test in reasonable amount of time. 2) large enough: to give us some confidence that the program is right


2. debugging

A large part of being a good programmer is learning how to debug.

A transferable skill.

not random: be systematic searching through the list.

how to be systematic:

1) study the program text & ask how could it have produced this result.

以不懂这段代码的心态去读它。不是问为什么没有得到自己想得到的结果,而是为什么会得到自己没有想要得到的这个结果。

2) is it a part of family?

3) how to fix it:

      study available data

      找出哪些数据会产生这个结果,哪些不会。

      design & run a repeatable experiment: know the expected results

using binary search to get the bug(print values)

给代码分区一半一半地找

可以同时输出变量的值在代码对的情况下应该的是什么 what it should be?

0 0