软件测试是软件开发过程中的重要组成部分,是用来确认一个系统的品质或性能是否符合用户提出的要求的标准。软件测试就是在软件投入运行前,对软件需求规格说明,设计规格说明和编码的最终复审,是软件质量保证的关键过程。软件测试是为了发现错误而执行程序的过程。
一,测试的目的和原则
软件测试是为了发现隐藏的各种错误而去执行程序,在执行程序的过程中,主要是用测试用例进行输入输出的检查,另外,测试应尽早进行,同时,还要避免程序员检查自己写的程序,避免程序员发现不了自己思维中的漏洞。
二,软件测试的方法
从是否需要执行被测软件的角度,可以将软件测试的方法分为静态测试和动态测试。静态测试无须执行被测代码,而是借助专门的软件测试工具评审软件文档或程序,度量程序静态复杂度,检查软件是否符合编程标准,借以发现编写的程序的不足之处,减少错误出现的概率。而动态测试是使被测代码在相对真实的环境下运行。
常用的动态测试方法有黑盒测试和白盒测试。
黑盒测试是把测试对象看做一个黑盒,检查程序的功能是否符合它的功能说明。黑盒测试的测试用例设计主要有:等价类划分,边界值分析,错误推测,因果图。
白盒测试是把程序看做一个透明的盒子,对程序的所有逻辑路径进行测试。白盒测试的覆盖标准有逻辑覆盖,循环覆盖和基本路径覆盖。其中逻辑覆盖包括语句覆盖,判定覆盖,条件覆盖,判定/条件覆盖,条件组合覆盖和路径覆盖。这六种覆盖标准发现错误的能力由弱至强变换。
三,软件测试的策略
测试的过程按四步进行:单元测试,组装测试,确认测试,系统测试。
单元测试:是针对软件测试的最小单元——程序模块,进行正确性检验的测试工作。
组装测试:把模块组装成系统进行测试。
确认测试:验证软件的功能和性能及其他特征是否与用户的要求一致。
系统测试:在实际运行环境下,对计算机系统进行一系列的组装测试和系统测试。
四,软件测试的种类
软件测试的种类,按照软件设计的分面,分成了16种,我们自己可以按照自己的想法将这16种细分,如,我将它分为文档方面的,需求方面,意外方面,运行环境方面。可以看出,软件测试要务必细化,找出软件的问题。
五,程序的调试
程序的调试是在进行了成功的测试之后才开始的工作,它与软件测试不同,调试的任务是进一步诊断和改正程序中存在的错误。
在测试完成之后,将结果写在文档里。