51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 677|回复: 0
打印 上一主题 下一主题

[资料] 软件测试和软件调试有什么区别

[复制链接]
  • TA的每日心情
    开心
    2022-9-21 15:33
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    跳转到指定楼层
    1#
    发表于 2022-12-6 10:00:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
      ​  1、目的不同
      软件测试的目的是发现错误,至于找出错误的原因和错误发生的地方不是软件测试的任务,而是调试的任务.调试的目的是为了证明程序的正确,因此它必须不断地排除错误.它们的出发点不一样。前者是挑错,是一种挑剔过程,属于质盘保证活动。后者是排错,是一种排除过程,是编码活动的一部分.
      2、任务不同
      既然软件测试属于质量保证活动,因此它贯穿于整个开发过程.从需求分析开始,就要制订软件测试计划,软件设计时要设计系统软件测试、集成侧试用例,编码阶段要设计单元软件测试用例并进行单元软件测试,软件测试阶段要进行集成软件测试、系统软件测试等,直到产品交付。只要有修改就有软件测试,产品交付后同样。它是比较有规律的活动,有系统的方法、原则作指导。
      而调试是编码活动的一部分,因此有编码就有调试.它的任务主要就是排错。调试的方法经常与使用的开发工具有关,例如:解释型的开发工具可以交互式调试,编译型开发工具就很难较好地查错。当然它有一些启发式的方法,它是一种比较依赖开发人员经验的活动。
      3、指导原则和方法不同
      软件测试是一种有规律的活动,有一系列软件软件测试的原则.其中主要是制订测试计划,然后严格执行.其次是一种挑剔性行为,因此它不但要测试软件应该做的,还需要测试软件不应该做的事情。调试所遵循的规律主要是一些启发式规则,是一个推理过程。例如使用归纳法、演绎法、回溯法等。


      ​
      软件测试的输出是预知的,其软件测试用例必须包括预期的结果,而调试的输出大多是不可预见的,需要调试者去解释、去发现产生的原因。
      4、操作者
      因为心理状态是软件测试程序的障碍,所以执行软件测试的人一般不是开发人员,以使软件测试更客观、更有效,而调试人员一般都是开发人员.
      这里面的四点都是分的比较精细的,但是总体来讲,业务的测试和调试都是随时交叉进行的,并没有按照时间阶段来进行划分测试和调试
      软件测试与调试在目的、技术和方法等方面存在很大的区别,主要表现在如下方面:
      (1)测试是为了发现软件中存在的错误;调试是为了证明软件开发的正确性。
      (2)测试以已知条件开始,使用预先定义的程序,且有预知的结果,不可预见的仅是程序是否通过测试;调试一般是以不可知的内部条件开始,除统计性调试外,结果是不可预见的。
      (3)测试是有计划的,需要进行测试设计;调试是不受时间约束的。
      (4)测试经历发现错误、改正错误、重新测试的过程;调试是一个推理的过程。
      (5)测试的执行是有规程的;调试的执行往往要求开发人员进行必要推理以至知觉的
      (6)测试经常是由独立的测试组在不了解软件设计的条件下完成的;调试必须由了解详细设计的开发人员完成。
      (7)大多数测试的执行和设计可以由工具支持;调式时,开发人员能利用的工具主要是调试器。


    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-24 15:54 , Processed in 0.061949 second(s), 24 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表