测试概念

1.软件测试的目的和原则
目的:找BUG,验证软件有没有问题
原则:让客户放心使用,满足客户的需求
2.什么是需求(用户需求/软件需求)用户的合理期望---研发人员,测试人员工作的依据
①用户需求:想要达到的目的(用户的想法)
②软件需求:为达到某一目的,而做出的更详细的计划(将用户需求转化为可以指导开发人员写    代码,测试人员写测试用例的文档)
*需求不明确时:三方沟通,做到三方一致(开发人员,客户经理,测试)
3.用户需求->软件需求
与客户/...进行频繁的沟通
4.软件需求说明书的书写

需求案例:声控灯--天黑--院子安装声控灯
声响会亮
感光强度
灯的亮度(使用电流的大小),形状
声音分贝,种类
电(有/没有)
5.什么是BUG,缺陷
定义:①有需求说明,并且正确:与需求说明不符合
②没有需求分析:程序没有实现其最终用户合理预期的功能要求
后果:用户流失
责任:第一责任人:测试人员
第二责任人:研发(很少由他们背锅)
处理:回滚,回归到没BUG的位置(慢慢定位)
对待BUG的态度:心存敬畏,及时改错
6 .测试用例
定义:向被测系统提供的一组集合
测试环境、操作步骤、测试数据、预期结果(核心)。。。等要素。
测试用例标题:唯一,不可重复
面试时:只需要写测试点即可,例如之前水杯的例子

①软件相关测试用例:(示例)
在这里插入图片描述
②生活相关–拨打电话的例子
书写测试点:
号码:
长度的验证,正确性的验证,是否可输入字符,不同运营商的验证
环境:
双方设备是否可以保持正常通话:
所持工具是否具有通话功能,输入号码是否合法,对方设备是否闲置未被占用
网络状态是否良好,是否在服务区范围内,不同运营商之家是否可以通话

双方设备是否可以保持正常通话:
电量,话费
个人:
通话声音是否真切,音量是否可控,是否安全,是否可以及时结束通话

7.开发模型
软件生命周期(需求分析,设计,编码,运行,测试,维护)

  • 1.瀑布型:适合需求稳定的项目(线性顺序模型)
    在这里插入图片描述
    优缺点:

  • 2.螺旋模型:适合庞大复杂风险大的项目(渐进式)
    优点:风险
    缺点:风险(每次风险评估,耗时)

  • 3.增量 和 迭代:降低项目风险
    增量:将项目分批制作,进行拼接,模块之间没有关系,相互孤立
    迭代:先整体,再进行细化,各个功能之间相互影响,牵一发而动全身

  • 4.敏捷:快

  • 面试题:传统开发模型与敏捷开发模型得区别(利用四种宣言去回答–共有十二种宣言)
    ①人与人间的沟通—个体与交互重于过程和工具
    ②轻文档—可用的软件重于完备的文档
    ③客户参与—客户协作重于合同谈判
    ④拥抱变化—响应变化重于遵循计划

  • 特点:
    ①周期短(一周到一月)
    ②对人数要求,团队人数不超过十人
    ③每天都要进行晨例会(时间不超过十分钟)–每人三句话(昨天干的事,今天的计4
    划,遇到的问题) 目的:让大家彼此了解大家的工作

  • 角色:product owner(产品经理)、scrum master(项目经理)和team(研发团队)组成。
    po:整理user story(需求)
    sm:召开例会,协调项目,服务于团队

  • 研发流程:
    ①整理user story
    ②发布计划会议:确定本轮迭代需要完成的user story
    ③迭代会议计划,工作分解,任务认领,明确每个任务的负责人和完成工时事的出初估

    ④开发
    ⑤测试
    ⑥上线

8.敏捷中的测试

  • 面临的挑战:
    ①轻文档–解决办法-----和客户进行沟通
    ②快速迭代—解决办法-----自动化测试

9.软件测试V模型
在这里插入图片描述

  • 阶段:
    ①用户需求(测试人员参与很少,秩序了解项目做的是什么)
    ②需求分析于系统(了解需求的范围,指制定测试计划)①
    ③概要设计,详细设计(cesium人员不参与)
    ④编码(测试人员写测试用例)②
    ⑤单元测试(开发人员,白盒测试人员参与,普通测试人员不参与)
    ⑥基础测试(开发人员,白盒测试人员参与,普通测试人员不参与--功能测试)
    ⑦系统测试(测试人员:搭建环境,数据准备,测试执行,缺陷管理,测试报告的输出/
    编写)③

    ⑧验收测试(用户自己测试,教用户如何使用,并且收集用户的反馈和意见)

  • 优点:测试,研发的每部分配很明确
    缺点:测试靠后,BUG发现的相对较晚

10.软件测试W模型(双V模型)
在这里插入图片描述

  • 特点:整体看并行,但再研发和测试各自的线路上看依旧是串行
    11.H/X模型是否适用于敏捷开发
    12.配置管理:
  • 定义:
    • 是通过对在软件生命周期不同的时间点上的软件配置进行标识,并对这些被标识的软件配置项的更改进行系统控制,从而达到保证软件产品的完整性和可溯性的过程。
      用工具管理项目里的数据--类似于图书管理员
  • 配置管理工具:GitHub。。。
  • 配置管理于软件测试的关系:
    测试人员应该从配置库取源代码编译后再测试,只有看到新的构建版本不再出现那个Bug,才能把缺陷库中的Bug关闭。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值