不知道为什么,我现在正处在功能测试往性能测试方向转,突然就有这种疑问,软件测试和软件调试到底有什么区别;在这里记录一下这个区别,以免忘记
1、目的不同
软件测试的目的是发现错误,至于找出错误的原因和错误发生的地方不是软件测试的任务,而是调试的任务.调试的目的是为了证明程序的正确,因此它必须不断地排除错误.它们的出发点不一样。前者是挑错,是一种挑剔过程,属于质盘保证活动。后者是排错,是一种排除过程,是编码活动的一部分.
2、任务不同
既然软件测试属于质量保证活动,因此它贯穿于整个开发过程.从需求分析开始,就要制订软件测试计划,软件设计时要设计系统软件测试、集成侧试用例,编码阶段要设计单元软件测试用例并进行单元软件测试,软件测试阶段要进行集成软件测试、系统软件测试等,直到产品交付。只要有修改就有软件测试,产品交付后同样。它是比较有规律的活动,有系统的方法、原则作指导。
而调试是编码活动的一部分,因此有编码就有调试.它的任务主要就是排错。调试的方法经常与使用的开发工具有关,例如:解释型的开发工具可以交互式调试,编译型开发工具就很难较好地查错。当然它有一些启发式的方法,它是一种比较依赖开发人员经验的活动。
3、指导原则和方法不同
软件侧试是一种有规律的活动,有一系列软件软件测试的原则.其中主要是制订侧试计划,然后严格执行.其次是一种挑剔性行为,因此它不但要侧试软件应该做的,还需要侧试软件不应该做的事情。调试所遵循的规律主要是一些启发式规则,是一个推理过程。例如使用归纳法、演绎法、回溯法等。
软件测试的输出是预知的,其软件测试用例必须包括预期的结果,而调试的输出大多是不可预见的,需要调试者去解释、去发现产生的原因。
4、操作者
因为心理状态是软件测试程序的障碍,所以执行软件测试的人一般不是开发人员,以使软件测试更客观、更有效,而调试人员一般都是开发人员.
这里面的四点都是分的比较精细的,但是总体来讲,业务的测试和调试都是随时交叉进行的,并没有按照时间阶段来进行划分测试和调试
软件测试与调试在目的、技术和方法等方面存在很大的区别,主要表现在如下方面:
(1) 测试是为了发现软件中存在的错误;调试是为了证明软件开发的正确性。
(2) 测试以已知条件开始,使用预先定义的程序,且有预知的结果,不可预见的仅是程序是否通过测试;调试一般是以不可知的内部条件开始,除统计性调试外,结果是不可预见的。
(3) 测试是有计划的,需要进行测试设计;调试是不受时间约束的。
(4) 测试经历发现错误、改正错误、重新测试的过程;调试是一个推理的过程。
(5) 测试的执行是有规程的;调试的执行往往要求开发人员进行必要推理以至知觉的”飞跃”。
(6) 测试经常是由独立的测试组在不了解软件设计的条件下完成的;调试必须由了解详细设计的开发人员完成。
(7) 大多数测试的执行和设计可以由工具支持;调式时,开发人员能利用的工具主要是调试器。

软件测试和调试的区别相关推荐

  1. 【软件测试】什么软件测试,软件测试和研发的区别

    目录 一.软件测试 二.软件测试与研发的区别 1,软件测试与调试的区别 2,难易程度 三.第一个测试 一.软件测试 验证软件是否满足用户的需求(不是以软件测试人员的主观意愿去判断软件质量的,它是有标准 ...

  2. 软件测试的定义、目的、原则、对象、测试与调试的区别

    1. 软件测试的定义   软件测试是指有特定的目的.有方法的,并且需要提交缺陷-跟踪解决的一个过程.其目的在于检验软件是否满足或弄清预期结果与实际结果之间的差别.即为了发现程序中的错误而使用热工或自动 ...

  3. 什么是软件测试?软件测试和研发的区别

    什么是软件测试 在1983年,IEEE软件工程标准术语中:使用人工或自动的手段,来运行或测试某个系统的过程:其目的在与检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别. 总的来说 软件测试就 ...

  4. c语言逐语句调试和逐过程调试,逐语句调试和逐过程调试的区别

    大家好,我是时间财富网智能客服时间君,上述问题将由我为大家进行解答. 以vs程序为例,其逐语句调试和逐过程调试的区别仅在于它们处理函数调用的方式不同,这两个命令都指示调试器执行下一行的代码.如果某一行 ...

  5. 软件生命周期和软件测试生命周期的区别

    区别如下: 软件生命周期是指从软件的产生直到报废的整个周期,包括可行性分析与项目计划,需求分析,概要设计和详细设计,编码,调试,维护七个阶段. 软件测试生命周期是指从测试项目计划建立到BUG提交的整个 ...

  6. 关于IAR的一些总结 -- ARM调试和Flash调试的区别

    作者:jicheng0622 最近一直埋头于毕业论文的撰写当中,真是有种"两耳不闻窗外事,一心只写毕业论文"的感觉啊.成天大眼对小眼地面对着word.viso和知网客户端等等文字编 ...

  7. 软件测试和硬件测试的区别及概念

    相同点 主要归类为以下几点: 1. 测试的流程 一个产品交到你手上,测试前的准备工作(环境,数据,工具,人员,任务等) 大致流程如下: 2. 缺陷的流程管理 提交缺陷>确认缺陷>追踪缺陷& ...

  8. keil软件调试(Debug)仿真教程(软件调试和硬件调试的区别)及常用调试按键详解

    文章目录 前言 一.什么是软件调试(Debug),有什么用? 二.keil Debug常用按钮 总结 前言 单片机的调试分为两种,一种是使用软件模拟调试,第二种是硬件调试,两种调试方式各有不同,软件模 ...

  9. 金融软件测试前景分析,与其他软件测试的5大区别!

    金融行业是国民经济发展的重中之重,直接关系到国家产业经济发展的稳定性.金融业软件测试作为整个金融产品生产周期中重要的一个环节,起着重要作用,尤其是对金融产品创新和风险控制等方面有着不可或缺的作用. 一 ...

  10. linux调试-v-n区别,为你分享一些超好用的Unix/Linux 命令技巧

    今天小编要跟大家分享的文章是关于一些超好用的Unix/Linux 命令技巧.喜欢Linux系统或者正在从事Linux相关工作的小伙伴快来和小编一起学习一下吧! 1.如何删除一个大文件 当你想要删除一个 ...

最新文章

  1. 阿里巴巴Json工具:Fastjson教程
  2. kotlin 类及其成员的可见性
  3. ORA-00600[kjpsod1]ORA-44203错误一例
  4. c#中mysql远程连接方法及实例
  5. 李倩星r语言实战_《基于R的统计分析与数据挖掘》教学大纲
  6. C语言,字符串指针做函数参数
  7. 疯狂动物消消乐html5游戏在线玩,疯狂动物消消乐免费
  8. 3123称重显示控制器说明书_失重秤在自动化配料系统中的应用 - 工业自动化称重仪表...
  9. 带你了解WDR-GaussDB(DWS) 的性能监测报告
  10. python删除首行_Python删除文件第一行
  11. 时间序列的归一化方法
  12. WIN7系统下Mapgis6.7常见的两个问题及解决办法
  13. [原创]用逻辑嗅探破解接触式IC卡口令
  14. 小伙伴要我给他介绍一些非常酷炫而有趣又容易上手的前端框架
  15. ORACLE数据库日期更新到时分秒格式
  16. 如何在对方不知情的情况下定位微信好友
  17. 【数据集】Kinetics-600 dataset介绍
  18. POI导出Excel(二)
  19. 开源配置管理系统的选择和搭建
  20. [转]《数学之美》 阅读笔记

热门文章

  1. linux 取消分区,如何在 Linux 中删除分区 | Linux 中国
  2. HDOJ 5142 NPY and FFT 水
  3. 计算机表格布局,修改Word2007的表格布局
  4. 基于USB数据采集卡(DAQ)与IO模块的热电偶温度采集
  5. 【论文笔记】Video Transformer Network
  6. Computer programming and database - 方方面面入门
  7. 计算机键盘的英文都是什么意思啊,电脑键盘上所有英文的意思
  8. 练习2-12 输出华氏-摄氏温度转换表
  9. ACM复习(53)17229 Lry,你除了2还是2
  10. 【深入浅出flink】第7篇:从原理剖析flink中所有的重分区方式keyBy、broadcast、rebalance、rescale、shuffle、global、partitionCustom