设计软件测试流程的目标:
指定完整且具体的测试流程和规范,是为测试工作提供基础流程框架,以期望能达到快速高效、高质量的测试工作。
测试流程图
1.需求分析:
需求是整个测试工作的基础,确定测试对象以及测试工作的范围和作用。用来确定整个测试工作,如安排测试时间表、测试设计等,并作为测试覆盖的基础。被确定的需求应该是可核实的,它们必须有一个可观察、可评测的结果。所以,我们现在理解的需求是一个比较大的概念,它是在整个测试计划文档中体现出来的。
●测试需求是制定测试计划的基本依据。确定了测试需求,能够为测试计划提供客观依据。确定要测什么、测试哪些方面,然后才能针对性的设计测试用例。
●测试需求是计算测试覆盖的分母,没有测试需求就没法准确的进行测试覆盖。
2.测试计划:
一般由测试负责人来编写。测试计划的依据主要是项目开发计划和对需求有一定的,了解。测试计划一般包括以下一些方面:
1. 测试背景
1.1软件项目介绍;
1.2项目涉及人员(如软硬件项目负责人等)介绍以及相应联系方式等。
2. 测试依据
2.1 软件需求文档;
2.2 软件规格书;
2.3 其他,如参考产品等。
3. 测试资源
3.1 测试设备需求;
3.2 测试人员需求;
3.3 测试环境需求;
3.4 其他。
4.测试用例:
一份好的测试用例对测试执行有很好的指导作用,能够发现很多软件问题。,指导测试实施人员执行测试工作,为测试报告提供依据,能更好的覆盖需求点防止遗漏。
5.搭建测试环境
不同软件产品对测试环境有着不同的要求。如C/S及B/S架构相关的软件产品,那么对不同操作系统,如Windows系列、unix、linux甚至苹果IOS等,这些测试环境都是必须的。而对于一些嵌入式软件,如手机软件,如果我们想测试一下有关功能模块的耗电情况,手机待机时间等,那么我们可能就需要搭建相应的电流测试环境了。当然测试中对于如手机网络等环境都有所要求。
测试环境很重要,符合要求的测试环境能够帮助我们准确的测出软件问题,并且做出正确的判断。
6. 执行测试
从测试的角度而言,测试执行包括一个量和度的问题。也就是测试范围和测试程度的问题。比如一个版本需要测试哪些方面?每个方面要测试到什么程度?
从管理的角度而言,在有限的时间内,在人员有限甚至短缺的情况下,要考虑如何分工,如何合理地利用资源来开展测试。当然还要考虑以下问题:
1. 当测试人员测试的执行不到位、敷衍了事时该如何解决?
2. 测试效率问题,怎样提高测试效率?
3. 根据版本的不同特点是只做验证测试还是采取冒烟测试亦或是系统全面测试?
4. 当测试过程中遇到一些偶然性随机问题该怎样处理?
总结:测试执行过程中会遇到很多复杂的问题,还是那句话,具体问题具体解决!
7. 缺陷管理
一般而言,缺陷都是谁测试谁提交。在缺陷的描述上,通常包括以下内容:
编号、测试者、测试日期、概要、预置条件、操作步骤、错误现象、严重程度、版本、操作系统,截图等。
常见缺陷管理工具:有禅道、JIRA、Bugfree等。
8. 测试报告
这里报告指软件经过一轮又一轮测试后,确认软件无重大问题或者问题很少的情况下,对准备发给客户的软件进行验收,以确定是否能够发行给客户或投放市场。
最后总结经验教训:每个版本有每个版本的测试总结,每个阶段有每个阶段的测试总结,当项目完成所有需求后,一般要对整个项目做个回顾总结,看有哪些做的不足的地方,有哪些经验可以对今后的测试工作做借鉴使用等等。测试总结无严格格式、字数限制。应该说,测试总结还是很重要的。