【测试理论基础1】

一、测试概念:

1.1 什么是需求:

需求就是用户的期望或者满足合同,规约,标准的条件或权限。
需求(细化用户需求,转化为实际需求)→实现(开发+测试)→上线
软件需求:由用户需求的细化和具体实现
用户需求:一般把用户的期望粗略地概括

1.2 软件测试和软件调试的区别:

1.2.1 目的:

软件测试:验证软件是否实现应实现的需求。(用户需求)
软件调试:开发人员验证是否实现了自己想实现的功能。

1.2.2 角色:

软件测试:开发人员+测试人员
软件调试:开发人员

1.2.3 阶段

软件测试:贯穿了整个开发阶段
软件调试:只在开发阶段

1.3 一个优秀的测试人员应具备的素质:

  1. 综合能力:沟通能力,编程能力,学习能力,文字描述能力(可以清楚的描述bug)。
  2. 自动化开发能力:(开发自动化脚本及工具的能力)
  3. 编写测试用例的能力。
  4. 探索性思维,发散思维。
  5. 兴趣。
  6. 责任感和压力。

1.4 需求

需求就是实现用户的期望或者满足文档(合同,标准,规范)所需要的条件或者权限。
需求包含两个方面,用户需求(粗劣的概括)和软件需求(用户需求的细化和具体实现)。
所以需要软件需求将用户需求规范实现,把用户需求变成一个具体的可实现的过程文档。需求是软件测试的依据。要验证需求的正确性和可操作性,并且要细化需求,从需求中提炼一个个的测试项。

1.5 测试用例

测试用例就是向被测试系统发出的一组集合。包含测试环境,测试数据,测试步骤,预期结果(重要性,优先级,操作方式,标题)

1.5.1 测试用例的优点:

衡量需求的覆盖率,复用性,借鉴意义,可用于回归测试,防止遗漏测试需求。

1.6 BUG

当且仅当,软件需求存在且合理时,软件功能和软件需求不相符合,就称为软件错误。如果软件规格说明书不存在,用户需求存在且合理,如果软件功能和用户需求不相符,那就是软件错误。

1.7 软件开发的生命周期

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

1.8 软件测试和软件调试

软件测试
软件开发人员要确保做出来的程序实现了它想实现的功能
软件测试是测试人员确保实现了它应该实现的功能

二、五种模型

2.1瀑布模型:

特点:阶段性较强,每个阶段比较独立,比较看重前期的需求和后期的测试。
优点:项目庞大,前期目标不准确,对于风险较伟大的项目抗风险能力很强。
缺点:测试在编码后才开始介入, 导致前期的问题到后期才被发现,容易产生漏洞。
在这里插入图片描述

2.2 螺旋模型:

在这里插入图片描述
适合于项目庞大,前期风险大,项目不是很明确。
特点:强调每一个迭代的测试质量和风险评估,人力物力投入的风险较大

2.3 增量模型:

按照周期开展相应的功能模块

2.4 迭代模型:

先在前一阶段开发这个项目的几个基础功能模块,然后在第二个阶段,开展进一步的功能模块。
优点:抗风险能力强。

2.5 敏捷开发模型:

在这里插入图片描述
特点:轻文档,轻流程,重目标,重产出(拥抱变化)用户可以在开发阶段提出新的需求变化。
scrum流程
角色:
PO: product owner
把需求转换成说明书
SM: scrum master
项目经理,管理整个团队,负责敏捷开发流程,负责敏捷流程顺利实施的各种会议。
ST: scrum team
各种技能的人开展会议,包含开发,测试。
流程:
产品发布会议-迭代计划会议-每日站会-产品演示会议-项目回顾会议。

2.6 V模型:

在这里插入图片描述
特点:每一个阶段独立性很强
左边每个阶段是右边测试阶段的依据,左边的是世界二段和右边的测试过程一一对应。
缺点:前期的错误后期才会发现,会错过错误的最佳纠正的时间

2.7 W模型:

在这里插入图片描述
特点:在开发的同时进行测试,独立性很强,测试从一考试就介入例如,保证了前期的问题可以尽早发现和纠正,测试和开发并行
缺点:每个阶段都是串行的过程,每个阶段紧密相连,不支持敏捷开发。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值