项目组织分布
软件测试的方法选择
一、项目管理部门主要任务
)1)制定或修改软件开发计划和测试计划;
)2)评估软件项目总体进展情况;
)3)对一些重大问题进行决策,确保软件开发项目按计划保质完成;
)4)确定每周完成的开发和测试任务
)5)协调和解决开发部门与测试部门之间出现的问题;
)6)决定是提前发布软件,还是推迟发布。
二、开发部门主要任务
)1)根据开发计划和时间表编写新的程序代码;
)2)分析测试部门发现的软件缺陷报告,确定修正优先级;
)3)修复一组软件缺陷报告后,进行软件系统集成,生成新的测试版本,在提交测试部门前进行最基本的检查;
)4)根据开发计划,在各测试版本提交日内向测试部门提交新软件测试版本,进行软件缺陷修复验证和新测试。
)5)回到最初的步骤。
三、测试部门主要任务
(1)根据不同测试要求,设计测试用例;
)2)按照测试计划和项目安排进行软件测试;
)3)对发现的软件缺陷编制软件缺陷报告书,并及时报告软件开发部门;
)4)对开发部门提供的软件缺陷修复后的新测试版本进行软件缺陷验证;
)5)对开发部提供的新测试版本,开始新的测试。
(6)回到最初的步骤。
四、测试组织和开发组织的关系
基本原则:
l在软件测试管理中,任何开发组织都很难客观地测试自己的程序,必须特别强调某个组织不测试自己编写的程序;
l应建立独立的软件测试组织进行软件测试:
L测试组织与开发组织的关系越远越好。
五、测试配置内容
测试人员:人,经验和专业知识,全职,兼职。
测试装置:计算机、打印机等。
测试环境:硬件、软件环境。
测试工具:各种测试工具。
测试地点:办公室成为实验室,有面积大小等。
测试战略:是否需要专业的测试公司,费用如何?
其他需求:移动存储、电话、通信等。
六.主测试环境要求
)1)满足受测软件运行的最低要求,保证支持软件正常运行。
)2)选择比较流行的操作系统和软、硬平台。
)3)结构比较简单,独立的测试环境。 除操作系统外,测试机上只安装运行和测试被测软件所需的支持软件,避免无关软件影响测试。
)4)保证测试环境中无病毒,利用有效的正版杀毒软件检测软件环境。
七、辅测试环境要求
)1)在符合兼容性测试:软件运行要求的范围内,选择典型的操作系统和常用的APP软件,验证所测试软件的安装、卸载和主要功能。
)仿真实际环境测试:部分软件,特别是面向公众的商品化软件,在测试时往往需要考察其在实际环境中的表现。
)3)横向比较测试:利用辅助测试环境“克隆”完全匹配的测试环境,保证各受测软件的平等比较。
)4)国际化测试:利用不同的语言环境进行测试,保证可以在不同国家和地区正常使用。
八、测试计划的重要性
测试跟踪:
在项目开发期间,计划运行多少测试用例? 在系统的最终版本中运行的测试用例是多少? 多少人通过,多少人失败? 有要忽略的测试用吗
例?等等。如果没有测试计划,就不能回答这些问题。测试验证:
在少数高风险行业中,测试小组必须证明确实执行了计划执行的测试。发布忽略某些测试用例的系统实际上是不合法和危险的。正确的测试计划和测试跟踪提供了一种验证手段。
九、测试说明
描述被测产品基本情况:
l 测试目的
l 变更信息
l 软件结构及技术要求
l 软件产品规格说明
l 测试范围
l 项目信息
十、测试计划的内容
1)测试说明
2)测试需求
3)测试策略
4)测试记录
5)测试资源配置
6)软件缺陷追踪
7)测试计划时间表
8)测试计划评审
十一、软件结构及技术要求
将被测软件划分成几个组成部分,规划成一个适用于测试的完整的系统,包括数据是如何存储的,如何传递的(数据流图),每一个部分的测试是要达到什么样的目的。每一个部分是怎么实现数据更新的。还有-些常规性的技术要求,比如运行平台、需要什么样的数据库等等。
十二、测试范围
简单的描述如何搭建测试平台以及测试的潜在的风险等。
十三、测试需求
列出所有要测试的功能项(测试项或测试点)。凡是没有出现在这个清单里的功能项都排除在测试的范围之外。
l 功能的测试
l 设计的测试
l 整体考虑
十四、设计的测试
l 针对用户界面、菜单结构、窗体等的设计是否合理等的测试;
l 测试内容包括美观性、可用性、易用性等方面;
l 系统的外观很重要,要求有尽可能好的合理性。
十五、整体考虑
测试系统各模块之间的接口,即测试数据流从软件中的一个模块流到另一个模块过程中的正确性,这是保证软件系统正确的前提。
十六、测试策略
根据不同的测试区域选择不同的测试策略:
黑盒、白盒测试
-功能、性能测试
自动、手动测试
十七、测试记录
l 公正性说明
l 测试用例管理工具
l 软件缺陷管理工具
l 特殊考虑
l 经验判断
十八、公正性说明
l 要对测试的公正性、依照的标准做一个说明,证明测试是客观的。在整体上,软件功能要满足需求、实现正确、和用户文档的描述保持一致。
l 要保证测试的客观,就要保证测试人员能客观的完成测试任务。
十九、测试用例管理工具
描述测试用例模板,管理测试用例采用了什么工具,工具的来源是什么,如何执行的,用了什么样的数据。测试用例记录中要为将来的回归测试记录信息。
二十、软件缺陷管理工具
在测试的计划阶段,应该明确建立一个软件缺陷管理的方法和工具。工具的来源是什么,如何执行的,需要使用什么样的数据。
二十一、特殊考虑
针对一些外界环境的影响, 要对软件进行一些特殊方面的测试。
例如,对于一些用于高尖端产品的信息系统,如水下机器人、太空探测器等,测试者应给予某些特殊的测试,使它们能在恶劣的环境下有着较高的可靠性和适应性。
二十二、经验判断
经验判断就是利用历史数据针对系统运行或测试中经常出现的问题仔细研究考虑,使之发生率尽量的小。
例如对于数据库系统,数据的操作(存取,副除,修改等)是其基本功能,同时也是经常出现问题(如数据冗余、死锁等)的地方。
二十三、测试资源配置
制定一个资源配置计划,包含每一个阶段的任务、所需要的资源。当发生类似到了使用期限或者资源共享的事情的时候,要更新这个计划。
二十四、软件缺陷追踪
l 描述软件缺陷报告的内容:缺陷名称、发现时间、发现者、修复者、发生的频率、所使用的测试用例,以及测试环境等。
l 描述如何界定一个软件缺陷的性质,对软件缺陷性质的描述尽可能是定量的。
l 描述软件缺陷报告的处理过程。
二十五、测试计划时间表
测试的计划表可以做成多个项目通用的形式,根据大致的时间估计来制作,操作流程要以软件测试的常规测试周期作为参考,也可以是根据什么时候应该测试哪一个模块来制定。
二十六、测试计划评审
在测试真正实施开展之前必须要认真负责的对测试计划检查一遍,并获得整个测试部门人员的认同,包括部门的负责人的同意和签字。