软件测试中如何开展系统测试活动
系统测试,英文是System Testing。
它的的任务是尽可能彻底地检查出程序中的错误,提高软件系统的可靠性,其目的是检验系统"做得怎样?"。这阶段又可分为三个步骤:模块测试,测试每个模块的程序是否有错误;组装测试,测试模块之间的接口是否正确;确认测试,测试整个软件系统是否满足用户功能和性能的要求。该阶段结束应交付测试报告,说明测试数据的选择,测试用例以及测试结果是否符合预期结果。测试发现问题之后要经过调试找出错误原因和位置,然后进行改正。是基于系统整体需求说明书的黑盒类测试,应覆盖系统所有联合的部件。系统测试是针对整个产品系统进行的测试,目的是验证系统是否满足了需求规格的定义,找出与需求规格不相符合或与之矛盾的地方。
软件质量的提高需要规范的流程,因此对软件系统测试过程进行管理也需要依据规范的过程定义。过程定义包含角色和职责的分配、阶段的划分、阶段的入口 / 出口准则、阶段的输入 / 输出等。下面我就针对以上这些,来叙述系统测试如何开展:
ST执行阶段的角色和职责
参与项目的测试人员是以测试组(测试组和需求组、开发组并列)的形式进入项目,每个测试组有一个测试组长负责项目测试工作。测试经理是系统测试的主要负责人,负责总体把握项目实施以及和项目其他负责人进行协调沟通。测试经理不直接面对测试组成员,而是通过测试组长进行任务安排、协调、沟通。但测试经理知情测试人员的项目测试工作,项目测试组的工作汇报均需测试组长定期抄送给测试经理。测试经理则参考测试组长提供的系统测试次数建议,以及项目进行的情况,和项目组各个小组负责人沟通后,定义软件系统测试阶段版本的集成时间。
软件测试经理:总体把握测试项目
1. 组织所有的测试执行活动,安排并监督测试执行任务
4.组织测试报告和系统测试预测试报告的写作
5.组织测试报告的评审
6.组织转系统测试评审
项目测试组长:管理测试人员,安排、分配测试工作
1.组织测试组成员进行项目测试工作
2.对测试人员进行任务安排、协调、
3.确保上级(测试经理)和下级(测试组成员)的沟通和联系
4.负责及时向测试经理汇报测试情况,并反映测试中出现的问题
5.负责把项目测试组的工作汇报抄送给测试经理。
软件测试人员(以测试组的形式):执行测试
1.搭建测试环境
2.执行测试用例
3.发现缺陷后提交缺陷报告
4.回归测试
5.每天提交测试日报
6.测试报告及系统测试预测试报告写作
7.参加测试报告的评审
8.参加转系统测试评审
测试人员是以测试组身份进入项目开展测试工作的,但并不是每个成员都从事同样的工作。在进入项目组工作时,每个测试人员所充当的角色是不同的,项目的测试角色划分为以下四种,他们的职责也不尽相同 (在实际工作中因为测试人员数量有限,所以经常是一个人担任多个角色) ,如下表所示:
测试角色划分
角色 职责
测试管理员 负责测试项目的管理
测试过程问题的处理与反馈
系统/性能测试组织和计划
测试过程状态报告
测试设计员 测试需求的描述
系统/性能测试用例的设计
测试工具、方法的引入
测试执行员 根据需要开发测试脚本
按照测试用例、测试脚本执行测试
项目测试工作指导
测试监督与度量员 测试度量
测试过程问题的汇总与反馈
开发产品的质量抽检与评定
ST测试过程的四个阶段
ST测试过程,包括四个阶段:系统测试计划阶段、系统测试设计阶段、系统测试实现阶段、系统测试执行阶段(系统测试分析阶段一般包括在系统测试执行阶段内,但在许多大公司也会考虑分成独立阶段实施,因此我在这里相应补充),如下图所示:
l. 系统测试计划阶段:完成系统测试计划
角色:测试经理
入口准则:
需求规格书明书已经完成,并且成立了需求规格基线
输入:
1.软件开发计划SDP
2.软件测试计划SVVP
3.需求规格说明书SRS
活动:系统测试计划阶段