软件测试基础理论知识

1.1软件测试分类

1.根据项目流程阶段划分软件测试
1)单元测试:也叫模块测试,是对程序的单个子程序或具有独立功能的代码段进行测试的过程
2)集成测试:在单元测试的基础上,先通过单元模块组装成系统或子系统,在进行测试。重点检查模块间的接口是否正确。
3)系统测试:针对整个产品系统进行的测试,验证系统是否满足需求规格的定义,以及软件系统的正确性和性能等是否满足其需求规格的要求。
4)验收测试:确保软件准备就绪,向软件购买者展示该软件系统能够满足用户的需求。

2.白盒测试、黑盒测试、灰盒测试
1)黑盒测试:把被测软件看成一个黑盒子,不关心盒子里的结构,只关心软件的输入数据和输出结果。只检查程序呈现给用户的功能是否按照需求规格说明书的规定正常使用、程序是否能接受输入数据并产生正确的输出信息。着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。
2)白盒测试:把盒子打开,去研究里面的源代码和程序执行结果。按照程序内部的结构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检测成序的每条逻辑路径是否都能按预定要求正确工作。
3)灰盒测试:介于黑盒测试与白盒测试之间,灰盒测试既关注输出对于输入的正确性,同时也关注内部表现。

3.功能测试与性能测试
1)功能测试:主要检查十几功能是否符合用户的需求。可以分为很多种:逻辑功能测试、界面测试、易用性测试、安装测试、兼容性测试等等。
2)性能测试:通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。软件性能主要是时间性能和空间性能两种。时间性能:主要是指软件的一个具体的响应时间。抛开具体的测试环境,来分析一次事物的响应时间是没有意义的,它需要在搭建好一个具体且独立的测试环境下进行。空间性能:主要指软件运行时所消耗的系统资源。

4.手工测试与自动化测试
1)手工测试:由测试人员一个一个得去执行测试用例,通过键盘鼠标等输入一些参数,并查看返回结果是否符合预期结果。手工测试不是专业术语,通常是指在系统测试阶段所进行的功能测试。
2)自动化测试;机器执行。自动化测试可分为功能自动化测试与性能自动化测试。功能自动化测试;把以人为驱动的测试行为转化为机器执行的一种过程。通过测试工具或框架录制(编写)测试脚本,对软件的功能进行测试。并验证测试结果是否正确,从而代替部分的手工测试过程。性能自动化测试:通过性能工具来模拟成千上万的虚拟用户向系统发送请求,验证系统的处理能力。

5.冒烟测试、回归测试、随机测试、探索性测试和安全测试
1.2 分层自动化测试
传统自动化测试:基于产品UI层的自动化测试,将黑盒测试转化为由程序或工具执行的一种自动化测试,
分层自动化测试:从黑盒(UI)单层到黑白盒多层的自动化测试体系,从全面黑盒自动化测试到对系统的不同层次进行自动化测试。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值