测试从需求阶段就开始介入了,因为用户的需求是测试人员测试软件是否符合用户需求的依据。
1、什么是需求?
(1)需求的来源
a、开发的软件可以来盈利的 :像一些商业app:淘宝、美团、饿了吗、支付宝等;用户的需求。像ERP类的办公软件;是甲方的需求。
b、可以来提高工作效率的:是公司内部的软件,像物流中为提高分拣工作的效率,就会想要开发一种系统来提高员工效率;是业务人员的需求
这些甲方需求、业务人员的需求、boss提出的需求都统称为(用户需求)。
需求分为:
用户的需求:系统要满足用户的期望、所需要的条件或者权限,简单说就是(系统使用者提出的需求)。
软件需求:用户需求经过分析和检验之后转化成合理的需求,一般以文档的形式展示;软件需求是对用户需求的细化,细节的进一步去实现文档;规范说就是(满足规范、标准、合同等文档所需要的条件和权能)。
(2)从测试人员角度看需求
用户需求 —— 软件需求 —— 提炼出测试需求点 —— 设计测试用例
(为什么需求对测试人员重要,因为它是依据,我们要从这里提炼测试需求点,设计测试用例,这样很多细节的测试就可以想得到)
?(3)测试人员如何才能深入了解需求?(面试可能会出现)
把自己带入用户这个角色去体验,多和需求的来源交流,多积累经验;
熟悉系统的所有业务需求,从用户提出的需求一开始就介入,不断和用户或者项目组人员讨论参与。
?2、测试用例? ? (测什么?怎么测?)
概念:测试用例就是向被测试系统的某一个功能点发起的一组集合,包括测试环境、测试数据、测试步骤、预期结果;(细分还有:标题、测试功能、方法、重要性、优先级、测试方法等)。
?案例:注册网易邮箱 (其中一个小的测试用例)
标题:输入符合规范的邮箱、密码、手机号注册 | 测试环境 | Chrome 96.0.4664.45 (浏览器版本)? Windows 10(系统版本)? 小米(软件系统) | 测试数据 | (具体的数据) 邮箱:1234567789@163.com 密码:123456www 手机号:1234567899 | 测试步骤 | 1、在浏览器中打开网易注册页面 注册网易免费邮箱 - 中国第一大电子邮件服务商 (163.com) 2、输入测试数据 3、点击同意勾选框 4、点击立即注册 | 预期结果 | 注册成功 |
?3、什么是BUG?
如果需求规格说明书(软件需求)存在并且合理,不符合需求规格说明的就是软件错误(BUG);
如果需求规格说明书(软件需求)不存在,用户的需求存在并合理,不符合用户需求的就是软件错误(BUG)。
通俗说就是(不符合或不能满足用户合理的需求)。
?4、软件开发的5个模型
软件开发的流程(生命周期): 需求 —— 计划 —— 设计 —— 开发/代码 —— 测试 —— 运行维护?
优点:强调开发的阶段性;强调早期计划及需求调查;强调产品测试。
缺点:串行,有去无回;测试阶段介入的晚,可能会导致项目前期出现的问题到后面才会发现,失去了错误及时修正的机会;不支持需求频繁变动的项目。
?螺旋模型(Spiral Model)
优点:强调严格的全过程风险管理;强调各开发阶段的质量;提供机会检讨项目是否有价值继续下去。
缺点:风险分析要求很高,需要投入专业的人员,项目支出比较高;
?增量、迭代模型(了解)
增量开发能显著降低项目风险,测试需要频繁进行。
区分两者:例如开发一个系统ABCD四个模块。增量是先完成A再完成B.....;迭代是先完成ABCD的框架,再完成ABCD的编码.....?
?敏捷开发模型(重点知道)
特点:重目标,重产出;轻文档,轻流程。注重和客户沟通,整个研发团队有效沟通,注重产品的质量,注重产品规定的交付日期。敏捷开发周期很短。
Scrum流程(敏捷开发流行的一种):
Scrum里的角色:
PO(product owner)产品经理:负责整理用户需求,形成userstory(软件需求)。
SM(scrum Master)项目经理:负责保证整个敏捷开发流程的顺利实施,开会和各种协调。
ST(scrum team)研发团队:负责整个项目的研发,各种技能的人组成,开发,测试,UI设计师等。
迭代开发:
与瀑布不同,
scrum
将产品的开发分解为若干个小
sprint(
迭代
)
,其周期从
1
周到
4
周不等,但不会超过
4
周。参与的 团队成员一般是5
到
9
人。每期迭代要完成的
user story
是固定的。每次迭代会产生一定的交付。
Scrum流程图:
(1)产品经理负责整理user story,形成左侧的product backlog。
(2)发布计划会议:产品经理讲解user story,对其进行评估和排序,会议制定出这一期迭代要完成的story列表,sprint backlog。
(3)迭代计划会议:项目团队对每一个story进行任务分解,进行合理的分配,完成工时的初估计。
(4)每日例会:项目经理每天召开例会,计划每日工作计划和收集问题。
(5)会议演示:迭代结束后,召开演示会议,团队展示本次迭代取得的成果,记录反馈,由PO整理形成新的story。
(6)回顾会议:项目团队对本次迭代进行总结,制定改进计划。
5、软件测试模型
?(1)软件测试V模型
(2)软件测试的W模型
W模型也叫双V模型
特点:测试人员在项目需求开始就介入,两个V分别是开发阶段和测试阶段,测试和开发是并行的。
优点:前期的问题就可以及时发现,及时纠正。
缺点:串行的,阶段性强,不适合需求频繁变更的项目,不支持敏捷开发的。
|