软件测试基础知识总结&&面试题(一)

  1. 什么是软件测试:软件测试人员验证软件是否满足用户的需求

  2. 软件测试和开发的区别

    1. 开发:广度小,专业度高 开发阶段
    2. 测试:所需技能广泛,但专业度低 贯穿软件开发的生命周期
  3. 软件测试和软件调试的区别:

    1. 测试
      1. 目的:软件测试人员验证软件是否是否实现了他应该实现的功能
      2. 角色:开发人员和测试人员共同完成
    2. 调试
      1. 目的:软件开发人员要确保程序做了他想让程序实现的功能(用户需求)
      2. 角色:开发人员
  4. 选择软件按测试的原因:

    1. 综合能力:沟通,学习,开发,文字描述
    2. 自动化测试技术
    3. 编写测试用例的能力
    4. 探索性思维
    5. 兴趣,责任感,压力
  5. 什么是需求:

    1. 用户的期望和满足合同(文档,规则,标准)的规定所需要的条件和权限
    2. 软件需求:用户需求转化而来 ,是用户需求的具体实现和细化
    3. 用户需求比较粗略,直接实现会有困难,所以需要把用户需求细节和规范形成软件需求,把用户需求变成一个具体可实现的过程文档
  6. 需求是软件测试的依据

    1. 验证需求,保证需求正确可实现,细化需求,从需求中提炼出一个个测试项(总分分
  7. 软测人员如何深入了解需求

    1. 从需求分析阶段就开始介入了解需求(站在用户角度分析
  8. 测试用例

    1. 含义:向被测系统发送的一组集合,包括测试环境,测试数据,测试步骤,预期结果(重要性,优先级,操作方式,标题等
    2. 测试用例告诉我们测什么,怎么测(测试用例相比需求的优点:衡量需求的覆盖率;复用性,借鉴意义;可以用于回归测试;防止遗漏测试需求;
  9. 什么是bug:

    1. 当且仅当,程序规格说明书(软件需求)存在并且合理时,软件功能和软件需求不符,就是软件错误
    2. 如果软件中需求规格说明书不存在,用户需求存在且合理,如果软件功能和用户需求不相符,就说明是软件错误
  10. 软件开发的五大模型:

    1. 软件开发的流程(生命周期):需求分析-设计-编码-测试-运行维护

    2. 模型

      1. 瀑布模型(需求明确)

        阶段性强 每个阶段比较独立 重视需求分析,后期测试 串行执行,编码后期介入,导致前期问题无法及时发现,失去及时纠正错误的机会

      2. 增量模型
        先开发核心模块 再与用户确认(可作为独立产品) 再继续
        抗风险能力较强

      3. 原型模型(需求不明确)
        快速构造功能模型 给用户演示 与用户沟通 迭代
        不适合大型项目开发

      4. 螺旋模型(不明确)
        与上类似 增加风险分析 适合大项目
        适合项目庞大,前期需求不明确,风险较大的项目,抗风险能力强

      5. 敏捷开发模型

        Scrum模型流程:

        产品发布会议

        迭代计划会议

        每日站会

        产品演示会议

        项目回顾会议

        PO:产品经理 整理需求的

        SM:项目经理 保证敏捷流程

        ST:各种技能工程师组成,开发产品

        敏捷开发特点:
        轻文档 轻流程 重目标 重产出 拥抱变化

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值