• 软件测试基本概念


    目录

    一、什么是需求

    1、用户需求

    2、软件需求

    二、什么是bug

    三、什么是测试用例

    测试用例是为了实施测试而向被测试的系统提供的一组集合,这组集合包含:测试环境,测试数据,预期结果等要素。

    四、开发模型和测试模型

    1、项目开发的生命周期

    2、瀑布模型(Waterfall Model)

    3、螺旋模型(Spiral Model)

    4、增量、迭代模型

    5、敏捷模型

    五、配置管理和软件测试

    1、V模型

    2、W模型


    一、什么是需求

    1、用户需求

    甲方爸爸提出的需求,一般来说比较粗略

    2、软件需求

    开发人员需要实现的功能。大多数公司在软件开发的时候把用户需求转化为软件需求,开发人员和测试人员工作的直接依据就是软件需求

    软件需求是测试人员进行测试工作的基本依据!

    二、什么是bug

    bug就是软件错误,无法根据程序的到正确的执行结果,这里提一个关于bug的小故事:

    三、什么是测试用例

    测试用例是为了实施测试而向被测试的系统提供的一组集合,这组集合包含:测试环境,测试数据,预期结果等要素。

    测试用例的意义:当不知道是否全秒的测试了所有功能-测试的覆盖率无法衡量-对新版本的重复测试很难实现-存在大量的冗余测试影响效率,测试用例就是为了解决上述的问题!

    四、开发模型和测试模型

    1、项目开发的生命周期

    需求分析 —— 计划 —— 设计 —— 编码 —— 测试 —— 运行维护

    2、瀑布模型(Waterfall Model)

    优点:强调开发的阶段性 阶段独立 强调早期计划和需求调查 强调产品测试

    缺点:1、测试在编码过后才进行,没有预留足够的时间给测试  

               2、依赖早期进行的唯一一次需求调查,不能适应需求变化

               3、可运行的产品上线太晚,给项目带来很大的风险,尤其是集成的风险。

    3、螺旋模型(Spiral Model)

    适用场景:一般在软件开发初期阶段需求不是很明确的时候,采用渐进式的开发模式。

    螺旋模型是渐进式开发模型的代表之一。因此螺旋模型适用于那些规模大、复杂度高、风险大的项目

    优点:强调严格的全过程风险管理 强调各开发阶段的质量 

    缺点: 更多人员、资金、时间的投入

    4、增量、迭代模型

    比如我们要在纸上画一个人

    增量:我们先画头,再画身子,再画......

    迭代:我们先画轮廓,再画基本雏形,再上色.....

    优点:能显著降低项目风险

    缺点:测试需要频繁进行,测试人员需要与开发人员更加紧密地协作

    5、敏捷模型

    在学习这个知识点之前,请和我大声地朗读《敏捷宣言》地价值观:

    个体与交互重于过程和工具!

    可用的软件重于完备的文档!

    客户协作重于合同谈判!

    响应变化重于遵循计划!

    在每对比对中,后者并非全无价值,但我们更看重前者!

    敏捷开发有很多种方式,scrum是其中比较流行的一种

    特点:轻文档,快速迭代

    三人五会

    三人:产品经理,项目经理,研发团队

    产品经理整理user story,形成左侧product backlog

     五会:

    1、发布计划会议:产品经理收集用户需求,对其进行估算和排序,发布计划会议的产出就是指定出这一期迭代要完成的 story 列表,sprint backlog

    2、迭代计划会议:项目团队对每一个story进行任务分解,分解的标准是完成该story的所有任务,每个任务都有明确的负责人,并完成工时的初估计

    3、每日例会:每个scrum master召集站立会议,相关人员都收邀参加,团队成员回答昨天做了什么,今天计划做什么,有什么问题

    4、演示会议:迭代结束之后,召开演示会议,相关人员都能受邀参加,团队给大家展示迭代成果,记录反馈形成新的story

    5、回顾会议:项目团队对本期迭代做总结,发现不足

    五、配置管理和软件测试

    1、V模型

    明确的标注了测试过程中存在的不同类型的测试,并且清楚的描述了测试阶段和开发过程对应关系

    单元测试和集成测试:检测程序的设计是否满足软件设计的要求

    系统测试:检测系统功能,性能的质量特性是否满足系统要求的指标

    验收测试:是否满足用户需求

    缺点:仅仅把测试作为编码之后的一个阶段 失去错误补救机会

    2、W模型

    开发测试同时进行,保证前期问题及时解决

    缺点:测试和开发保持线性的前后关系,不支持敏捷开发,不拥抱变化

  • 相关阅读:
    使用Redis和Lua的原子性实现抢红包功能
    《Java基础——方法的调用》
    SpringBoot 框架笔记
    同一项目如何连接多个mongo服务器地址
    java计算机毕业设计双峰县在线房屋租售网站源码+系统+数据库+lw文档+mybatis+运行部署
    ROS2学习
    Tomcat 源码解析一EL表达式源码解析
    ThreadLocal的简单理解
    MC我的世界大型生存服务器配置推荐首选I9-13900K高频服务器
    关于vue点击下载的避坑指南
  • 原文地址:https://blog.csdn.net/qq_59539549/article/details/127737573