在软件项目的整个生命周期里,从需求调研到概要设计、详细设计、编码实现、单元测试、集成测试、系统测试、验收测试,每前进一步都离不开测试的确认与迭代。可以说在软件项目里,测试就是那个“一步三回头”的(娘子)监军,不停地迭代并给出反馈信息,以确认保障需求的完整性,设计的可行性,代码的正确性,尽量少的缺陷产生。
作为最早一批通过中国实验室合格评定委员会(CNAS)认可的第三方软件评测机构,我们对软件测试有着丰富的行业积累与沉淀,对测试手段在软件项目生命周期里的灵活运用有着自己理解与总结:
一、测试是保障软件质量提升的重要手段
1、测试是贯穿整个软件项目生命周期的重要工作,“一步三回头”是对其在软件项目测试过程中的形象描述。
2、测试过程是通过对测试工具、测试方法、测试经验的综合运用不断地得到相关的反馈信息,帮助软件项目实现质量改进与提升的过程。
测试过程本质上是信息获取的过程,通过测试工具、方法、经验的灵活运用得到对软件的相关反馈信息,以此确认是否do ringt things或do things right。测试需要在需求分析阶段就开始做,通过测试手段验证需求分析的正确性与可行性。
软件测试的目的是要从三个方面保障软件项目的质量,一是需求的完整性,二是代码的正确性,三是最少的缺陷。
二、测试为我们创造的价值
软件是智力产品,人的思维永远不可能完美,软件测试的最终目的就是帮我们发现对改善软件本身与软件开发过程有益的信息。如果说开发部门是在做事,那么测试则是通过对结果的验证来确认开发部门做事的正确性,同时也是对开发工作的一项重要度量。
测试帮我们实现:
1、测试帮甲方发现问题,提高项目质量,缩短项目周期,降低项目成本与项目风险。
2、测试帮助乙方验证目前所做事情正确性。
3、测试帮助软件企业通过保障软件质量而满足客户需求,为企业带来利润与品牌价值的提升。
测试是值得我们不断研究、不断探索的一门学科。测试与开发相伴而生,离开了软件项目、软件产品,测试无法独活。
三、如何做好测试
1、规范是纲,建立良好的测试管理规范与测试流程。
要做好测试首先要建立良好的测试规范与测试流程。测试规范是一个公司的测试标准,不仅是测试人员测试的准则,还是开发人员和测试人员之间达成的契约。测试规范与流程一方面为测试人员提供工作依据与指导,另一方面便于各产品线人员之间相互交流,更重要的是可以保证代码的规范性。没有规范与流程约束,软件企业就只能永远停留在作坊式生产水平。
软件测试规范应当对测试目的、测试类别、测试过程、测试方法、测试用例、测试管理、测试文档、测试工具进行明确的描述。一份有效的、可行性高的软件测试规范一般包含以下内容:
⑴ 测试计划规范:测试计划模板的编写风格和测试计划的编写要求。
⑵ 测试用例设计规范:测试用例的模板编写和测试用例的设计要求。
⑶ 测试工具使用规范:保证测试人员知道“项目进展”到什么程度,什么时候使用什么测试工具。最好把测试工具配置部分的“注意事项”也罗列在里面。比如说使用LoadRunner做性能测试时,支持哪些常用的协议?使用那些脚本开发语言都写清楚。