软件测试的生命周期?
![[��ǩ:����] [��ǩ:����]](https://www.xuefen.net//file/upload/img/7/280.jpg)
软件测试生命周期包括6个阶段(大体上):
1)计划 2)分析,3)设计,4)构建,5)测试周期,6)最后测试和实施,7)实施后。
1. 计划(产品定义阶段)
�8�5 高层次的测试计划(包含多重测试周期)
�8�5 质量保证计划(质量目标,测试标准等 )
�8�5 确定计划评审的时间
�8�5 报告问题过程
�8�5 确定问题的分类
�8�5 确定验收标准-给质量保证员和用户。
�8�5 建立应用程序测试数据库
�8�5 确定衡量标准,例如缺陷数量/严重程度和缺陷起源(仅举几个例子)。
�8�5 确定项目质量度量
�8�5 开始制定项目整体测试时间表(时间,资源等)
�8�5 必需阶段:评审产品定义文档
�8�5 文档中加入质量保证标准,作为工程改善进程的一部分
�8�5 根据该产品的特点帮助确定问题的范围
�8�5 大约每月要花5 -1 0小时在这一方面
�8�5 计划在数据库管理所有测试用例,包括手工方面或者自动化方面。
2. 分析(外部文档阶段)
�8�5 根据业务需求开发功能验证矩阵。
�8�5 制定测试用例格式-估计时间和分配优先级。
�8�5 制定测试周期矩阵与时间线
�8�5 根据功能验证矩阵开始编写测试用例
�8�5 根据业务需求计划测试用例基准数据
�8�5 确定用于自动化测试的测试用例。
�8�5 自动化团队开始在测试工具中创建变量文件和高层次的测试脚本。
�8�5 为自动化系统中的跟踪组件设置路径和自动化引导。
�8�5 界定压力和性能测试的范畴。
�8�5 按照每个测试用例的数据要求开始建立基准数据库。
�8�5 定义维护基准数据库的过程,即备份,恢复,验证。
�8�5 开始规划项目所需的测试周期数,和回归测试次数。
�8�5 开始文档复查,如:功能设计文档,业务需求文档,产品规格说明书,产品外部文档等。
�8�5 审查测试环境和实验室,前端与后端系统都要。
�8�5 准备使用McCabe工具,以支持白盒测试中代码的研发和复杂性分析
�8�5 建立反馈机制并开始录入文档。
�8�5 必需阶段:审查外部文件
�8�3 文档中加入质量保证标准,作为工程改善进程的一部分。
�8�3 根据群体执行反馈编写测试用例
�8�3 开始研制测试用例估计数目,每个用例的执行时间,和用例是否自动化这些方面的度量
�8�3 为每个测试用例确定基准数据,
�8�3 大约每月要花25小时在这一方面
3. 设计(文档架构阶段)
�8�5 根据变更修改测试计划
�8�5 修改测试周期矩阵和时间线
�8�5 核实测试计划和用例用到的数据都输入到数据库,或是否必需的。
�8�5 修改功能验证矩阵
�8�5 继续编写测试用例,根据变化添加新的用例
�8�5 制定风险评估标准
�8�5 规范自动化测试和多用户测试的细节。
�8�5 挑选出一套用于自动化测试的测试用例,并且把这些用例脚本化
�8�5 规范压力测试和性能测试的细节。
�8�5 最终确定的测试周期。(根据用例的估计时间和优先权确定每个周期所用的测试用例数)
�8�5 最终确定的测试计划
�8�5 估计单元测试所需资源
�8�5 必需阶段:审查架构文件
�8�3 文档中加入质量保证标准,作为工程改善进程的一部分。
�8�3 确定要进行编码的的实际组件或模块
�8�3 在这定义单元测试标准,通过/失败准则等。
�8�3 单元测试报告,报告进行单元测试后的模块质量如何,白盒测试和黑盒测试都要包括输入/输出数据和所有决定点。
�8�3 列出所有要进行单元测试的模块
4. 构建(单元测试阶段)
�8�5 完成所有计划
�8�5 完成测试周期矩阵和时间线
�8�5 完成所有测试用例。(手动)
�8�5 完成第一套自动化测试用例的测试脚本。
�8�5 完成压力和性能测试的计划
�8�5 开始压力和性能测试
�8�5 McCabe工具支持-提供度量
�8�5 测试自动化测试系统,并修复错误。
�8�5 发展单元测试
�8�5 运行质量保证验收测试套件,以确保软件已经可以交给QA测试。
5. 测试周期/ 错误修正( 重复/系统测试阶段)
�8�5 测试周期1,执行第一套的测试用例(前端和后端)
�8�5 报告错误
�8�5 错误审核-不断开展的活动。
�8�5 根据需求修改测试用例
�8�5 根据需求增加测试用例
�8�5 测试周期二
�8�5 测试周期三
6. 最后的测试和实施(代码冻结阶段)
�8�5 执行所有前端测试用例-人工和自动化。
�8�5 执行所有后端测试案例-人工和自动化。
�8�5 执行所有压力和性能测试。
�8�5 提供对正在进行的缺陷跟踪度量。
�8�5 提供对正在进行的复杂性和设计的度量。
�8�5 更新测试用例和测试计划的估计时间。
�8�5 文件测试周期,回归测试,并更新相应文档。
7. 实施后
�8�5 开展实施后评估会议以回顾整项工程。(经验所得)
�8�5 准备最终的缺陷报告和相关度量。
�8�5 制定战略以防止类似的问题在今后的项目中重复出现。
�8�5 创建如何改进流程的计划目标和里程碑,
�8�5 McCabe工具-制作最后的报道和分析。
�8�5 自动化测试组-1 )审查测试用例以评估其他可用于自动化回归测试的用例2 )清理自动化测试用例和变量,和3 )审查自动化测试和手工测试结果的整合过程
�8�5 测试实验室和测试环境-清理测试环境,标记和存档用过测试用例和数据,恢复测试仪器到原始状态等。
软件测试周期
软件测试周期周期就是软件测试经历的几个阶段,如单元测试、集成测试、确认测试、系统测试、验收测试等。具体列举如下:
单元测试:针对每个单元的测试, 以确保每个模块能正常工作为目标。
集成测试:对已测试过的模块进行组装,进行集成测试。目的在于检验与软件设计相关的程序结构问题。
确认测试:是检验所开发的软件能否满足所有功能和性能需求的最后手段。有的划分方法中,也将确认测试合并入系统测试中。
系统测试:检验软件产品能否与系统的其他部分协调工作。
验
软件测试项目周期是指
测试周期是指从测试项目计划建立到BUG提交的整个测试过程,包括软件项目测试计划,测试需求分析,测试用例设计,测试用例执行,BUG提交五个阶段。
软件测试周期并行与软件生命周期,存在于软件生命周期的各个阶段。
软件测试生命周期
软件测试生命周期(Software Testing Life Cycle)的八个阶段详情:
演变:
60年代:
90年代:
2000年:
测试的趋势和能力也一直在变化。测试人员现在被要求做更多的面向技术和流程方面的事情。测试现在不仅仅限制在找bug,而且有一个更广阔的工作范围,从项目开始阶段甚至需求还没正式定下来的时候就被需要,被安排工作。
测试也是标准化的。就像软件开发那样有生命周期一样,测试也有自己的生命周期。在后面的内容,我将会讨论什么是测试生命周期以及软件测试是怎么相关联的。
什么是生命周期?
“生命周期”这个简单的词是指从一个形式(状态)到另外一个形式(状态)的一系列的变化。这些变化可以发生有形或无形的事情上。每个实体都有生命周期,从开始到死亡/结束。
类似的,软件也是个实体。就像开发软件包括一系列的步骤,测试也有很多步骤,这些步骤按照一定顺序去执行。
通过系统的有计划的执行测试活动的现象被叫做测试生命周期。
什么是软件测试生命周期(STLC)
它是指测试流程,这个流程是按照一定顺序执行的一系列特定的步骤,去保证产品质量符合需求。在STLC流程中,每个活动都按照计划的系统的执行。每个阶段有不同的目标和交付产物。在STLC中每个组织有不同的阶段;但是基本的是一样的。
下面是STLC的8个阶段:
1.需求阶段(Requirements phase)
2.计划阶段(Planning Phase)
3.分析阶段(Analysis phase)
4.设计阶段(Design Phase)
5.实施阶段(Implementation Phase)
6.执行阶段(Execution Phase)
7.总结阶段(Co
nclusion Phase)
8.结束阶段(Closure Phase)
#1.需求阶段:
在这个阶段,是分析和学习需求的阶段。和其他团队一起头脑风暴,努力去查找需求是不是可测的。这个阶段帮助去辨认测试的范围。如果任何功能是不可测试的,及时沟通,做出一些减轻策略(减小风险)的计划。
#2.计划阶段:
在实际场景中,测试计划是测试流程的第一步。在这个阶段我们辨别出哪些活动和资源能匹配测试目标。我们也努力去辨别测试指标,测试方法以及如何追踪这些指标。
计划的基础是什么?只有需求吗?
答案是NO。需求只是一种基础,然而还有其他2方面的因素影响测试计划。他们是:
-组织的测试策略
-风险分析/风险管理和减轻
#3.分析阶段:
STLC定义“WHAT”被测试。一般地,我们通过需求文档、产品风险和其他测试依据去辨别测试条件。测试条件应该可以被追溯到需求。有很多因素可以影响测试条件的辨别:
-测试的层次和深度
-产品的复杂性
-产品和项目风险
-软件开发生命周期被涉及
-测试管理
-团队的知识和技能
-相关干系人的可用性
我们应该努力用一种很详细的方式把测试条件写下来。例如,一个电子商务网站,你有一个测试条件为“用户应该可以支付”。或者你可以详细的描述为“用户应该可以通过信用卡,微信、支付宝等支付”。把详细的测试条件写下来最大的好处是可以提高测试覆盖率,因为测试用例就是通过这些测试条件写的,这些详情触发写出更多的测试用例。同时,也可以分辨出退出测试的标准,比如哪些条件决定可以终止测试。
#4.设计阶段:
这个阶段都有“HOW”去测试。包括以下的任务:
-详述测试条件。拆分测试条件为多个子条件去提供覆盖率。
-辨别和获取测试数据
-辨别和搭建测试环境
-创建需求跟踪指标
-创建测试覆盖指标
#5.实施阶段:
这个阶段最主要的任务是创建详细的测试用例。测试用例的优先级以及哪些用例会成为回归测试的一部分。在最终决定测试用例之前,审核测试用例的正确性是非常重要的。同时在真正执行开始之前也不要忘了sign off(署名,比如新版本发布前的最终测试报告需要发送sign off报告)测试用例。如果你的项目设计自动化,分辨哪些用例适合自动化以及准备测试脚本。不要忘记审核。
#6. 执行阶段:
从名字可以知道,这个阶段是STLC的真正执行阶段。但在你执行之前,确保你的标准是和需求匹配的。执行测试用例,报bug如果有任何的不匹配。同时填写追踪指标去跟踪你的进度。
#7.总结阶段:
这个阶段聚焦在检验标准和报告。依赖你的项目和干系人选择,你能决定是发日报还是周报等等。有不同的报告类型(日报,周报)你可以发送,但重点是,报告的内容是根据你发送对象的不同而变化的。如果项目经理属于测试背景的,那么他们对技术方面更感兴趣,因此在报告中包含技术方面的内容(用例的pass个数,fail个数,bug个数,严重bug等等)。但是如果你向更高层的干系人报告,他们可能对技术方面不感兴趣,可以给他们发送一些风险相关的,比如通过测试减轻风险的发生。
#8.结束阶段:
这个阶段的任务包括:
-检查测试的完成度。是否所有的用例被执行或是有意减轻一些。检查是否还有S1的bug是激活状态。
-经验总结会议及书写相关文档。包括哪些做得好,哪些需要提高和如何提高
总结:
一起来总结一下STLC。
链接:https://www.jianshu.com/p/21b84e176e12
好的,那么这就是学分高考给大家分享的软件测试的生命周期?,希望大家看完这篇由小编精心整理的内容后,能对相关知识有所了解,解决你的疑惑!查看更多相关文章请访问学分高考(本文共6181字)