第1页:调试软件调试是在进行了成功的测试之后才开
- 调试
- 软件调试是在进行了成功的测试之后才开始的工作。它与软件测试不同,调试的任务是进一步诊断和改正程序中潜在的错误。
- 调试活动
- 确定程序错误的性质和位置。
- 修改程序,排除错误。
第2页:一.调试步骤调试
一.调试步骤调试:本页为图示内容,展示调试软件调试是在进行部分的组成结构与关键要素。
第3页:从错误现场入手确定
- 从错误现场入手,确定程序出错位置;
- 找错误的内在原因;
- 找到则排除错误,回归测试。
- 否则,加测试用例证明猜测原因。调试
第4页:二.调试方法
- 二.调试方法
- 强行排错
- 将内存内容打印出来分析。
- 程序特定部位设置打印语句。各关键变量改变部位、重要分支部位等,监视重要变量变化。调试
第5页:调试#include <
- 调试#include <stdio. h>#include <stdlib. h>int A(), B(int), C(int, int);int main(){int v1, v2, v3;v1 = A();v2 = B(v1);v3 = C(v1, v2);printf ("The Result is %d. " , v3);return
- ;}
第6页:自动调试工具程序语言
- 自动调试工具。程序语言调试功能或专门交互式调试工具,不必修改程序。如设置断点,观察程序断点处状态,包括变量、表达式值等。调试
第7页:回溯法排错(小程序
- 回溯法排错(小程序常用)确定最先发现“症状”位置。人工沿程序控制流程向回追踪源代码,直到找到错误根源或确定错误产生范围。
- 原因排除法对分查找法、归纳法、演绎法调试
第8页:对分查找法
- 对分查找法
- 如已知每个变量在程序内若干关键点正确值,用赋值或输入语句在程序中点附近“注入”正确值,运行程序检查输出。
- 正确,错误原因在程序上半部分;反之,在程序后半部分。
- 反复使用,将程序出错范围缩小到容易诊断的程度。调试
第9页:归纳法调试
- 归纳法调试
- 归纳法是一种从特殊推断一般的逻辑方法。
- 归纳法调试的想法是:从一些线索(错误征兆)着手,通过分析它们之间的关系来找出错误。调试
第10页:调试提出假设证明假设纠正错误
调试提出假设证明假设纠正错误研究数据间的关系组织数据收集有关数据不能能能不能NoYeswhatwhenwherehow归纳法中组织数据的3W1H表
第11页:调试
调试:本页为图示内容,展示调试软件调试是在进行部分的组成结构与关键要素。
第12页:演绎法排错演绎法是
- 演绎法排错演绎法是从一般原理或前提出发,经过排除和精化的过程来推导出结论的逻辑方法。
- 根据已有测试用例,设想所有可能出错原因;
- 逐个排除不正确的;
- 验证余下假设确是出错原因。调试
第13页:演绎法排错列举可能
- 演绎法排错列举可能的原因排除不适当的原因对保留的假设继续推断有剩余证明假设纠正错误能没有剩余收集更多的数据不能调试