• 0
  • 0
分享

回归测试详细阐述

回归测试

  • 回归测试是指修改了旧代码后,重新进行测试以确认修改没有引入新的错误或导致其他代码产生错误。自动回归测试将大幅降低系统测试、维护升级等阶段的成本。回归测试作为软件生命周期的一个组成部分,在整个软件测试过程中占有很大的工作量比重,软件开发的各个阶段都会进行多次回归测试,在渐进和快速迭代开发中,新版本的连续发布使回归测试进行的更加频繁,而在极端编程方法中,更是要求每天都进行若干次回归测试。因此,通过选择正确的回归测试策略来改进回归测试的效率和有效性是很有意义的。简单概括:
    回归测试是指重复以前的全部或部分的相同测试。新加入测试的模组,可能对软件其他的模快内部、外部会产生“副作用”,即软件产生了新的缺陷或错误。因此,必须要进行某些软件模块或程序进行测试和修正之后的再次测试。

  • 回归测试的策略
    对于一个软件开发项目来说,项目的测试者在实施测试的过程中会将所开发的测试用例保存到“测试用例库”中,并对其进行维护和管理。当得到一个软件的基线版本时,用于基线版本测试的所有测试用例就形成了基线测试用例库。在需要进行回归测试的时,就可根据所选择的回归测试策略,从基线测试用例库中提取合适的测试用例,组成回归测试包,通过运行回归测试包来实现回归测试。保存在基线测试用例库中的测试用例可能是自动测试的脚本,也可能是测试用例的手工实现成果。
    回归测试需要时间、经费和人力来计划、实施和管理。为了在给定的开发预算和项目进度下,尽可能有效地进行回归测试,需要对测试用例库进行维护并依据一定的策略选择相应的回归测试包。

  • 测试过程
    (1) 识别出软件中被修改的部分;
    (2) 从原基线测试用例库T中,排除所有不再适用的测试用例,确定那些对新的软件版本依然有效的测试用例,其结果是建立一个新的基线测试用例库T0。
    (3)依据一定的策略从T0中选择测试用例测试被修改的软件。
    (4)如必要,生成新的测试用例集T1, 用于测试T0无法充分测试的软件部分
    (5)用T1执行修改后的软件。
    注:第(2) 和第(3) 步测试验证修改是否破坏了现有的软件功能,第(4) 和第(5) 步测试验证修改工作本身。


作者:CHEN某人

原文链接:https://blog.csdn.net/juannys/article/details/110456423#comments_14171436

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 读者提问:阿常,我想请教一下,测试点等同于测试用例吗,需求分析得到的测试点是否可以直接拿过来当测试用例执行呢 ?阿常回答:测试点并不等同于测试用例,不能直接拿来指导测试。1、测试点在内容上可能会存在冗余,测试输入不明确,测试颗粒度太粗,操作环境类似等等一系列的问题。2、测试点需要经过 “ 加工 ” 之后,才能成为测试用例。3、我们需要对测试点进行 “ 去重 ”、“ 合并 ”、“ 细化 ”,再确定各个测试点的测试条件、输入数据和输出结果。4、测试点是一些零散的测试思路的集合。5、测试用例是一份正确指导测试的使用说明书。阿常碎碎念:那如何将测试点加工成为测试用例呢,我们将在下一问中继续讨...
            0 0 892
            分享
          •   恰逢项目初起之时,代码基础各部分都有待完善。第一天上项目发现前后端几乎没有测试,遂决定加个测试覆盖率的限制。  前端  前端用的react, 测试用的jest。Jest是Facebook的一个专门进行Javascript单元测试的工具,适合React全家桶使用。因jest本身内置代码覆盖率,便新建了jest.config.json来实现统计前端测试覆盖率的需求。  {     "collectCoverage": true,     "coverageDirectory": "re...
            0 0 851
            分享
          •   很多对软件测试行业感兴趣的小伙伴,都听说过兼容性测试,但却不太理解兼容性测试是干啥的。除了我们日常经常听到的手机版本兼容,游戏升级迭代,其实兼容性测试还包括很多其他方面。今天,我们就一起来盘一盘什么是兼容性测试吧~  什么是兼容性测试?  我们先来想一下,什么叫兼容。也就是说放在不一样的载体,或者不一样的环境里,这个程序都必须能正常运转,这个叫兼容。所以,也就不难理解什么叫兼容性测试了吧~  根据度娘官方的解释:软件兼容性测试是指,检查软件之间能否正确地进行交互和共享信息。  随着用户对来自各种类型软件之间共享数据的能力,和充分利用空间同时执行多个程序能力的要求,测试软件之间能否协作变得越...
            0 0 469
            分享
          •   靠谱测试人员除了需要具备业务分析能力、洞察BUG能力等,还需要具备一定的硬实力,也就是常说的专业技术能力。比如:测试用例设计、抓包工具、性能测试功能、数据库、测试服务器维护等等。  1.掌握测试基础知识  基础知识就是根基,根基打好了,你才能够更有效地往后期发展,也就是为了以后的学习做一个铺垫。如果根基都没打好,功能测试不会,就想直接学性能,那性能是做不好的。  2.娴熟运用测试工具  熟悉工具和熟练使用工具完全是两个概念,熟悉工具基本上等同于不会,遇到过很多简历上写会使用什么什么工具,都没有实际能力。比如loadrunner只会一个简单的录制,增强一下脚本,觉得会用了,那知识会用了1/5...
            0 0 557
            分享
          • 大家都知道,测试Android系统原生态APP目前最好的工具使UiAutomation,随着DevOps的普及,我们需要尽早地发现程序中的缺陷,所以单元测试变得非常重要,Android系统推出了Espresso测试框架。Espresso与UiAutomation最显著区别在于UiAutomation可以测试一个APP多个界面(Active),而Espresso只能测试一个APP一个界面(Active),另外UiAutomation可以独立测试APP建立专门的Project,Espresso必须建立在待测APP同一个目录下。下面我向大家简单介绍一下Espresso。进行Espresso,首先在待...
            0 1 2508
            分享
      • 51testing软件测试圈微信