1 测试概念
使用人工(手动测试)或者自动(自动化测试)手段运行或测试某个系统的过程。
目的在于检验它是否满足规定的需求、弄清预期结果与实际结果之间的差别。
2 测试策略和过程:单元测试、集成测试、系统测试、确认测试、验收测试
2.1 单元测试
单元测试又称模块测试,是针对软件设计的单元–程序模块进行正确性检验的测试。
目的在于检查每个程序单元能够实现详细设计说明中的功能、性能、接口和设计约束等要求,发现各模块内部可能存在的错误。
2.2 集成测试
集成测试,也叫组装测试或联合测试。在单元测试的基础上,将所有模块按照概要设计要求(如根据结构图)组装成为子系统或系统,进行集成测试。
集成测试时检验程序单元和部件的接口关系。实践表明,一些模块虽然能够单独地工作,但并不能保证连接起来也能正常的工作。程序在某些局部反映不出来的问题,在全局上很可能暴露出来,影响功能的实现。
2.3 系统测试
系统测试,将完整集成后的软件、计算机硬件、外设、网络等其他元素结合在一起进行测试,其目的是通过与系统的需求相比较,发现所开发的系统与用户需求不符或矛盾的地方。系统测试的任务是可能彻底的检查出程序中的错误,提高软件系统的可靠性,是一种综合性的测试。
2.4 确认测试
确认测试,又称有效性测试。有效性测试是在模拟的环境下,运用黑盒测试的方法,验证被测软件是否满足需求规格说明书列出的需求。任务是验证软件的功能和性能及其他特性是否与用户的要求一致。对软件的功能和性能要求在软件需求规格说明书中已经明确规定,它包含的信息就是软件确认测试的基础。
目的是向未来的用户表明系统能够像预定要求那样工作。经集成测试后,已经按照设计把所有的模块组装成一个完整的软件系统,接口错误也已经基本排除了,接着就应该进一步验证软件的有效性,这就是确认测试的任务。
2.5 验收测试
验收测试,系统测试是一项确定产品是否能够满足合同或用户所规定需求的测试,通常会有选择的选定部分测试用例执行(可以理解为系统测试的延续)。验收测试通常由第三方执行。
3 测试用例
测试用例是一份关于具体测试步骤的文档,它描述了测试的数据配置、步骤描述、参数、预期结果等,以判断被测软件或系统的工作是否正常。
一个好的测试用例是在于它能发现至今未发现的错误。
4 测试用例的设计方法:等价类划分、边界值分析、因果图法
4.1 等价类划分
等价类划分的办法是把程序的输入域划分成若干部分,然后从每个部分中选取少数代表性数据当作测试用例。
4.2 边界值分析法
边界值分析法是一种补充等价划分的测试用例设计技术,它不是选择等价类的任意元素,而是选择等价类边界的测试用例。
4.3 因果图方法
因果图方法的思路是:从用自然语言书写的程序规格说明的描述中找出因(输入条件)和果(输出或程序状态的改变),通过因果图转换为判定表。