软件测试流程及方法详解


软件测试流程及方法详解

文章插图
 
软件测试类型(共19种)1.按照测试类型划分:
功能测试(Function Testing):测试软件的功能是否符合功能需求,通常采用黑盒测试方式 。一般由独立测试人员执行 。
性能测试(Performance Testing):测试软件在各种情况下的性能,如在正常情况下或者最大负载下的状况 。包括内存测试、CPU测试、响应时间测试、唤醒率测试、强度测试、容量测试、基准测试等 。
安全测试(Security Testing ):测试该系统防止非法侵入的能力 。在IT软件产品的生命周期中,特别是产品开发基本完成到发布阶段,对产品进行检验以验证产品是否符合安全需求定义和产品质量标准的过程 。(比如登录,注册功能等)
易用性测试:测试软件是否易用,主观性比较强 。一般要根据很多用户的测试反馈信息,才能评价易用性 。
兼容性测试:测试该系统与其他软件或者系统平台(软件/硬件)的兼容性 。包括自身兼容性(历史版本数据,功能兼容)、平台兼容性(window平台、linux平台等的兼容)、设备兼容性(Android产品,IOS产品等的兼容)、与其他软件兼容性等 。
部署测试:也叫安装测试,确保该软件在正常或异常情况下都能进行安装(进行首次安装、升级、完整的或自定义的安装--正常情况;磁盘空间不足,缺少目录创建权限,安装过程中关机重启--异常情况)(部署方式:分布式部署,集中部署等)
文档测试:检验样品用户文档的完整性,正确性,一致性,易理解性,易浏览性 。包括用户手册,配置手册、安装手册,使用说明,用户帮助文档等 。
本地化测试:不同区域不同版本的测试(中文版本测试,英文版本测试等)
无障碍测试:针对特定的用户群体,比如老年人,残疾人等类型的用户
竞品测试:同类产品在功能、性能等方面的对比测试 。
开发文档和源程序可以应用单元测试应用走查的方法 。2.按是否查看程序内部结构分类
黑盒测试(Black-Box Testing):又称数据驱动测试,从用户角度出发,把测试对象比作黑盒,关注程序外部结构,不关注内部逻辑,针对输入对应的输出是否正确进行测试(是对功能的测试) 。即针对软件界面和软件功能进行测试,以此来确认软件的功能和界面是否正确或遗漏,数据库访问是否正常,会出现性能错误,初始化错误和程序终止错误等bug 。
灰盒测试(Gray-Box Testing): 是一种综合测试方法,他将黑盒测试和白盒测试相结合,基于程序运行时的外部表现又结合内部逻辑结构来设计用例,执行程序并采集路径执行信息和外部用户接口结果的测试技术 。
白盒测试(White-Box Testing):结构测试或逻辑驱动测试,是一种按照程序内部逻辑结构和编码结构,设计测试数据并完成测试的一种测试方法 。
3.按是否运行程序分类
静态测试(Static Testing):指不运行被测程序本身,仅通过分析或检查源程序的语法、结构、过程、接口等来检查程序的正确性 。对需求规格说明书、软件设计说明书、源程序做结构分析、流程图分析、符号执行找错 。技术应用包括控制流分析技术、数据流分析技术、信息流分析技术等 。
软件质量的衡量方面:功能性(Functionality)、可靠性(Reliability)、可用性(Usability)、有效性(Efficiency)、可维护性(Maintainability)、可移植性(Portablity)
动态测试(Dynamic Testing):是指通过运行被测程序,检查运行结果与预期结果的差异,并分析运行效率、正确性和健壮性等性能指标 。组成部分:构造测试用例、执行程序 、分析程序的输出结果 。技术应用包括逻辑覆盖率测试技术(分支测试技术、路径测试技术等),程序插装等 。
4.按阶段测试分类
单元测试(Unit Testing):又称模块测试,是针对软件设计的最小单位----程序模块或功能模块,进行正确性检验的测试工作 。其目的在于检验程序各模块是否存在各种差错,是否能正确地实现了其功能,满足其性能和接口要求 。常用方法:白盒测试 。
测试阶段:编码后
测试对象:最小模块
测试人员:白盒测试工程师或开发工程师
测试依据:代码和注释+详细设计文档
测试方法:白盒测试
测试内容:模块接口测试、局部数据结构测试、路径测试、错误处理测试、边界测试
集成测试(Integration Testing):又叫组装测试或联合,是单元测试的多级扩展,是在单元测试的基础上进行的一种有序测试 。旨在检验软件单元之间的接口关系,以期望通过测试发现各软件单元接口之间存在的问题,最终把经过测试的单元组成符合设计要求的软件 。常用测试方法:灰盒测试 。


推荐阅读