软件产品质量的特性:
1.功能性:达到设计规范以及满足用户需求的程度
2.可靠性:规定时间和条件下,维持正常运行的能力
3.性能:响应速度以及实现功能所需的计算机资源的有效程度
4.容量:系统的接受、容纳程度,或某项功能的最大数据量或最大限度
5.可用性:用户学习的简单程度,适用于不同类型用户的程度
6.可测量性:系统的某些特性可以通过量化数据指标描述
7.可维护性:环境变化、需求变化或出现错误时进行修复改变的难易程度
8.兼容性:在不同的操作系统或环境中可以稳定运行的程度
9.可扩展性:增加新功能、扩充系统的难易程度
软件测试的分类:
按测试层次划分:
(1)底层测试:单元测试
(2)接口层次:集成测试
(3)系统层次:系统测试
(4)用户层次:验收测试
按被测试对象划分:
(1)单元测试,组件测试,模块测试
(2)程序测试
(3)系统测试
(4)文档测试
(5)数据库测试、服务器测试
按测试目的划分:
(1)功能测试:测试每个功能是否按照实现设计的那样运行
(2)压力测试:模拟实际应用的软硬件环境及用户使用过程的系统负荷,长时间或超大负荷地运行测试软件,来测试被测系统的性能、可靠性、稳定性等
(3)性能测试:测定系统在不同负载条件下的系统具体性能指标
(4)可靠性测试:测试系统是否能长期稳定正常运行,如测定系统平均故障间隔时间。可靠性测试包括强壮性(鲁棒性)测试和异常处理测试。
(5)灾难恢复性测试:测试软件在系统崩溃、硬件故障等灾难发生后重新恢复系统和数据的能力
(6)安全性测试:测试系统在应对恶意攻击时的系统防护能力
(7)兼容性测试:测试系统在不同环境下的实际表现
(8)回归测试:测试新的变化是否会对原有功能的正常使用产生影响
(9)安装测试:模拟真实的用户环境,测试系统是否能按照安装说明书成功安装
根据程序是否运行划分:
(1)静态测试
(2)动态测试
根据是否主动发送请求划分:
(1)主动测试:需要设计测试用例,主动发送请求,输入数据,获得系统反馈的数据,一般处于测试环境
(2)被动测试:不需要设计测试用例,只需要监测系统的运行,获取系统运行中产生的数据,一般处于实际运行环境
根据是否知道程序内部划分:
(1)黑盒测试:在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息
(2)白盒测试:按照程序内部的结构测试程序,测试程序内部的变量状态、逻辑结构、运行路径等,检验程序中的每条通路是否都能按照预定要求正确工作,检查程序内部动作或运行是否符合设计规格要求。
软件测试的级别:
1.单元测试:主要采用白盒测试方法,通常要编写驱动程序和桩程序。
2.集成测试:在单元测试的基础上,按照设计要求不断进行集成而进行的测试,目的是发现单元之间的接口问题。通常有两种集成方式:一次性集成方式和渐增式集成方式,但一般要求采用渐增式集成方式。
3.系统测试:在集成测试完成之后,一般采用黑盒测试方法进行功能测试,非功能测试则在实际运行环境或模拟实际运行环境,针对系统的非功能特性进行测试,包括压力测试,性能测试,安全测试等。
本文内容主要参考: 《软件测试方法和技术(第3版)》朱少民主编 清华大学出版社 百度百科相关词条