软件测试周期周期就是软件测试经历的几个阶段,如单元测试、集成测试、确认测试、系统测试、验收测试等。具体列举如下:

单元测试:针对每个单元的测试, 以确保每个模块能正常工作为目标。

集成测试:对已测试过的模块进行组装,进行集成测试。目的在于检验与软件设计相关的程序结构问题。

确认测试:是检验所开发的软件能否满足所有功能和性能需求的最后手段。有的划分方法中,也将确认测试合并入系统测试中。

系统测试:检验软件产品能否与系统的其他部分协调工作。

软件测试项目周期是指

测试周期是指从测试项目计划建立到BUG提交的整个测试过程,包括软件项目测试计划,测试需求分析,测试用例设计,测试用例执行,BUG提交五个阶段。

软件测试周期并行与软件生命周期,存在于软件生命周期的各个阶段。

软件测试的生命周期?

软件测试生命周期包括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 测试实验室和测试环境-清理测试环境,标记和存档用过测试用例和数据,恢复测试仪器到原始状态等。

软件测试生命周期(STLC)的8个阶段的详细信息

一.演化

♦1960年代的趋势:

 ♦1990年代的趋势:

 ♦2000年代的趋势:

测试的趋势和能力正在发生变化。现在要求测试人员更加注重技术和流程。现在的测试不仅仅局限于发现错误,而且范围更广,从项目一开始就需要甚至没有最终确定。 由于测试也是标准化的。就像软件开发有生命周期一样,测试也有生命周期。在随后的章节中,我将讨论生命周期是什么以及它与软件测试有何关系,并将尝试详细说明。

开始吧!

二. 什么是生命周期?

简单术语中的生命周期是指从一种形式到另一种形式的变化顺序。

这些变化可能发生在任何有形或无形的事物上。

每个实体从开始到退休/消亡都有一个生命周期。

以类似的方式,软件也是一个实体。

就像开发软件涉及一系列步骤一样,测试也有一些应该以一定顺序执行的步骤。

这种以系统和有计划的方式执行测试活动的现象称为测试生命周期。

三. 什么是软件测试生命周期(STLC)

软件测试生命周期是指一个测试过程,其具有以确定顺序执行的特定步骤,以确保满足质量目标。

在STLC过程中,每个活动都以有计划和系统的方式进行。

每个阶段都有不同的目标和可交付成果。

不同的组织在STLC中有不同的阶段;但基础保持不变。

以下是STLC的各个阶段:

需求阶段

计划阶段

分析阶段

设计阶段

实施阶段

执行阶段

结论阶段

关闭阶段

#1. 需求阶段:

在STLC的这个阶段,分析和研究要求。与其他团队进行头脑风暴会议,并尝试确定这些要求是否可测试。此阶段有助于确定测试范围。如果任何功能不可测试,请在此阶段进行通信,以便可以规划缓解策略。

#2. 计划阶段:

在实际情况中,测试计划是测试过程的第一步。在此阶段,我们确定有助于实现测试目标的活动和资源。在规划期间,我们还尝试确定指标,收集和跟踪这些指标的方法。 

在什么基础上进行规划?只有要求?

答案是不。要求确实构成了基础之一,但是还有另外两个影响测试计划的非常重要的因素。这些是:

–-组织测试策略。

–-风险分析/风险管理和预防。

#3. 分析阶段:

STLC阶段定义了要测试的“WHAT”。我们基本通过需求文档,产品风险和其他测试依据来确定测试条件。测试条件应该可追溯到要求。影响测试条件识别的因素有很多:

– 测试的级别和深度

– 产品的复杂性

– 产品和项目风险

– 涉及软件开发生命周期。

– 测试管理

– 团队的技能和知识。

– 利益相关者的可用性。

我们应该尝试以详细的方式写下测试条件。例如,对于电子商务Web应用程序,您可以将测试条件设置为“用户应该能够进行付款”。或者您可以通过说“用户应该能够通过NEFT,借记卡和信用卡付款”来详细说明。编写详细测试条件的最重要的优点是它增加了测试覆盖率,因为测试用例将根据测试条件编写,这些细节将触发编写更详细的测试用例,最终会增加覆盖范围。还要确定测试的退出标准,即确定停止测试的一些条件。

#4. 设计阶段:

这个阶段定义了“HOW”进行测试。此阶段涉及以下任务:

– 详细说明测试条件。将测试条件分解为多个子条件以增加覆盖率。

– 识别并获取测试数据

– 识别并设置测试环境。

– 创建需求可跟踪性度量标准

– 创建测试覆盖率指标。

#5. 实施阶段:

STLC阶段的主要任务是创建详细的测试用例。确定测试用例的优先级,还可以确定哪个测试用例将成为回归套件的一部分。在最终确定测试用例之前,重要的是进行审查以确保测试用例的正确性。另外,在实际执行开始之前,不要忘记取消测试用例的签名。如果您的项目涉及自动化,请确定自动化的候选测试用例并继续编写测试用例的脚本。别忘了查看它们!

#6. 执行阶段:

顾名思义,这是实际执行的软件测试生命周期阶段。但在开始执行之前,请确保满足您的输入条件。执行测试用例,记录任何差异时的缺陷。同时填写可追溯性指标以跟踪您的进度。

#7. 结论阶段:

该STLC阶段集中于退出标准和报告。根据您的项目和利益相关者的选择,您可以决定报告是否要发送每周报告/每日报告等。您可以发送不同类型的报告(DSR - 每日状态报告,WSR - 每周状态报告)但重要的是,报告的内容会发生变化,具体取决于您发送报告的对象。如果项目经理属于测试背景,那么他们对项目的技术方面更感兴趣,因此请在报告中包含技术内容(通过的测试用例数,失败,引发的缺陷,严重性1缺陷等)。但是,如果您向上层利益相关方报告,他们可能对技术问题不感兴趣,因此请报告他们通过测试减轻的风险。

#8. 关闭阶段:

关闭活动的任务包括以下内容:

–检查测试是否完成。是否所有测试用例都执行或缺少的。检查是否没有打开严重性1的缺陷。

–取经验教训会议并创建经验总结文件。(包括哪些方面进展顺利,哪些方面有改进,哪些方面可以改进)

软件生命周期和软件测试生命周期的区别是什么?

两者的主要区别如下:

1、需求分析不同

软件测试生命周期的来源:需求说明书或者原型图参与人员:产品经理、研发、设计、测试。软件生命周期,弄清楚用户对软件系统的全部需求②在确定软件开发可行的情况下, 对软件需要的各个功能进行详细分析,明确客户的需求,输出规格书明说的最终版,提交评审。

2、软件设计不同

软件测试生命周期的概要设计:主要是架构的实现,指搭建架构、表述各模块功能、模块接口连接和数据递的实现等事物。详细设计:对各模块板块进行深入分析,对各模块组合进行分拆等,这一阶段要求达到伪代码级别。

软件生命周期的概要设计,主要是架构的实现,搭建架构、表述各模块功能、模块接口链接和数据传递的实现等项目事物。详细设计,对概要设计中表述的各模块进行深入分析等,其中需要包含数据库设计说明。

3、问题的定义不同

软件生命周期:问题的定义及规划(开发方与需求方讨论):主要是确定软件的开发目的及可行性,确定开发计划。软件测试生命周期:产品经理抒写–问题定义及规则,与用户进行交流,确认用户需要解决计算机的什么问题,确认软件的开发目的及其可行性,制定项目总体开发计划。