• 关于软件测试中回归测试的思考


    今日在学习国内软件测试业界前辈的经验之谈时,碰巧遇到了有关回归测试的问题,结合自身的思考,做个简单的总结记录。

    1、回归测试,无法回避的测试活动

        从事软件测试的朋友可能有相同的体会,无论所参与的产品采用何种软件开发模型进行开发,在产品生命周期内,测试开展的活动中,必定不会缺少回归测试这项活动。
        为什么这么说呢?我个人的理解如下。

    • 不同的开发阶段,需要进行不同的测试活动。无论所参与的产品采用何种软件开发模型进行开发,对于测试活动而言,在不同的开发阶段少不了要进行不同的测试活动,比如模块测试、集成测试、系统测试、验收测试等,开展这些测试活动时,测试的对象可能是完整产品的某个功能模块、或某几个功能模块的集成、或所有功能模块的集成等,实际执行测试的时候,可能相同的功能会重复执行多次,当然,每个阶段的测试深度可能会有所不同,这取决于采用的测试策略等。
    • 软件质量很大程度上决定了某些测试活动的开展。 比如,集成测试或系统测试阶段,一轮测试结束后,某些功能模块仍存在缺陷,此时就需要按照缺陷管理流程,在缺陷生命周期内进行跟踪、流转,待研发人员将缺陷修复后,进行验证及确认,而后进行回归测试。
    • 处于维护阶段的系统,部分功能发生变更后,需要进行回归测试,以确保功能变更对原有功能没有造成影响。
    • 迭代更新的系统,新一轮迭代新增的功能构建到原有产品中后,需要对构建后整体的功能进行测试,此时也会涉及到回归测试。
    • 其他情况下需要进行回归测试等

    2、开展回归测试的流程

        回归测试的重要性不言而喻,如何开展回归测试,以提高测试效率和有效性,保证产品的质量呢?这是我一直在思考的问题。通过思考,对该问题有了一定的认识。
        回归测试不应草率的进行,应该像其他测试活动一样,提前制定回归测试流程,规范化开展工作。具体来说,有以下几个环节:

    • 软件变更分析。变更分析类似于我们做测试分析一样,在了解了变更的需求后,对其进行测试分析,以明确针对变更的需求需要从哪些维度进行测试覆盖。
    • 软件变更影响分析。分析变更的功能模块对其他模块是否产生影响,需要重点关注与变更模块有交互的点,以此来确认回归测试的优先级。
    • 回归测试策略制定。上述分析完成后,对于测试对象及范围有了一个整体的把握,结合质量目标,考虑相应的测试类型及测试方法。
    • 回归测试用例选取
    • 执行
    • 回归测试结果报告等

    3、选取合适的回归测试用例需考虑的因素

        如何选择合适的回归测试用例,以下是几个需考虑的因素:

    • 功能的重要性。什么功能是客户最经常使用的;哪些功能对客户而言是最重要的;若产品还未发布,没有客户使用过,则需要考虑产品的商业价值、做该产品的目的,以此来划分功能的重要程度。
    • 缺陷分布。考虑以前版本中,缺陷的分布情况,以此来划分待回归功能的优先级。通常可以将“二八法则” 应用到缺陷分布分析中。
    • 变化量。针对新增加的功能或者升级,对原来的哪些功能和模块的影响是最大的,根据影响程度进行回归测试优先级的划分。

    4、小结

        以上对回归测试活动、如何开展回归测试及开展回归测试时如何选取合适的测试用例,作了简单的说明。
        当然,随着对测试的深入理解,对该项测试活动的了解也会逐渐加深。此文仅记录当下个人的思考与见解,希望有缘的网友一起讨论交流。

    种一棵树最好的时间是十年前,其次是现在!
  • 相关阅读:
    tone() 和 IRremote 冲突的解决办法
    Github
    bit Buffer
    转载:AAC文件解析及解码
    Z变换
    FFT
    DFT
    傅里叶变换
    傅里叶变换--虚部的理解
    转载:WAV header
  • 原文地址:https://www.cnblogs.com/gaozhidao/p/12291466.html
Copyright © 2020-2023  润新知