赞
踩
软件测试是使用人工或者自动的手段来运行或者测定某个软件系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。
在软件投入使用前,要经过一系列的严格测试,才能保证交付质量。
对于软件质量而言,QC、QA、QM是三个常见且易混淆的概念。
名词 | 概念 | 备注 |
---|---|---|
QC | Quality Control(质量控制) | 测试人员负责,通过验证的方法保证质量达到要求 |
QA | Quality Assurance(质量保证) | 过程保证人员负责,通过过程的方法保证质量达到要求 |
QM | Quality Management(质量管理) | 质量管理人员负责,一般为负责质量的管理者,通过制定过程、协调资源等一系列的手段为QA、QC工作创造良好的环境和条件 |
下图可以更清晰的解释QC、QA和QM三者的区别:
从QC到QA再到QM是一个循序渐进的变革过程,体现了质量管理理论的发展脉络。
在日常工作当中,我们最需要厘清的是QA和软件测试的关系。QA是质量保证,而软件测试是质量保证的一种手段。QA不仅包括软件测试,还包括流程和产品方面的规范化管理措施等。大部分公司QA等价于软件测试,这种理念其实还停留在QC阶段,是针对编码结果的检验,忽略了需求分析和系统设计阶段的质量验证。
随着软件测试理论和技术的发展,测试人员通过大量实践,总结出了若干测试模型,如常见的V模型和W模型。这些模型对测试活动进行抽象处理,并与开发工作紧密结合,是测试过程管理的重要参考依据。
3.1 V模型
每种测试都有自己的目的和针对性。单元测试针对程序的规范和逻辑,集成测试重点是模块之间的连接,系统测试侧重系统功能的实现,性能测试验证系统的稳定性和效率,验收测试检验系统是否实现业务需求,相互之间不可替代。
V模型的缺陷在于仅仅把测试过程作为编码后的一个阶段,忽略了测试对需求分析、系统设计的验证,因此需求阶段的缺陷很可能一直到后期的验收测试才被发现,那时进行弥补将耗费大量的人力物力。
3.2 W模型
相较于V模型,W模型在软件开发的各个阶段都同步进行质量验证活动,W模型由两个V模型组成,分别代表开发过程和测试过程。
W模型认为测试应伴随着整个软件的开发周期,而且测试的对象不仅仅是编码的程序,需求和设计阶段的交付物同样需要进行测试和验收。
通用的测试流程包括计划、设计、实现、执行和完成几个步骤:
测试不是测试组一个团队的事情,需要整个项目的所有同事一起参与,测试工作所涉及的主要角色和职责大致如下:
角色 | 职责 |
---|---|
项目经理 | 与测试团队共同制定测试的质量目标,并跟踪目标的达成情况; 总体管理测试的进度和缺陷修改工作的进展; 提供测试活动所需的文档; 参加测试计划、测试用例、测试报告的评审 |
测试组织者 | 制定测试计划、组织和实施测试工作,包括组织、监控和管理测试活动,确保达成测试的质量目标,任务包括: 1. 组织搭建测试环境、准备测试数据、编写测试用例; 2. 组织测试人员编写测试脚本(如果能自动化测试); 3. 组织测试人员建立执行流程并进行联调; 4. 组织维护测试用例和测试脚本; 5. 对缺陷的提交和验证进行追踪。 负责编写测试报告,参加测试计划、测试用例、测试报告的评审 |
测试设计者 | 分析测试需求、设计测试用例; 编写测试脚本,建立和联调测试的执行流; 参加测试计划、测试用例、测试报告的评审; 负责测试环境的搭建 |
测试执行者 | 负责测试用例的执行、记录测试结果和缺陷; 参加测试计划、测试用例、测试报告的评审; 负责缺陷修改后的重新测试和验证 |
缺陷修改者 | 负责修改测试发现的缺陷; 参加测试计划、测试用例、测试报告的评审 |
缺陷分配者 | 负责审核和分配测试缺陷; 对测试中发现的问题进行定位并协助解决; 参加测试计划、测试用例、测试报告的评审 |
质量保证者 | 组织评审测试相关的测试计划、测试用例、测试报告; 负责审计测试过程,确保测试按照规范和流程进行 |
配置管理员 | 负责测试过程中版本的集成和发布; 负责测试中各类交付物的配置管理; 参加测试计划、测试用例、测试报告的评审 |
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。