- 软件测试的基础理论
软件测试的定义
狭义:测试的定义:“程序测试是为了发现错误而执行程序的过程”。这个定义,被业界所认可,经常被引用。
广义:为了更早地发现问题,所以将测试延伸到需求评审、设计审查活动中去,也就是将“软件质量保证”的部分活动归为测试活动。
软件缺陷产生的原因
需求解释有错误
用户需求定义错误
需求记录错误
设计说明有误
编码说明有误
程序代码有误
数据输入有误
测试错误
问题修改不正确
不正确的结果是由于其他的缺陷而产生
测试环境
测试环境=硬件+软件+网络
硬件环境:pc机还是笔记本
软件环境:不同的操作系统windows10 windows8 windows7 Linux Mac ,不同浏览器firefox chrom
网络:局域网还是互联网
在这里插入图片描述
测试流程
立项(项目确定)
需求文档(由需求人员编写)
需求评审(开发,测试,项目经理,需求人员进行开会,确定需求)
详细设计(开发人员)
测试用例(测试人员)
测试用例评审(开发,测试,项目经理,需求,进行测试用例的确定)
编码(开发人员)
部署(测试人员)
冒烟测试(上线前对软件的基本运行测试)
bug(查看bug)
上线(运维)
回归测试(对上线前的bug进行再次的测试)
回归报告(对回归测试进行总结)
- 软件测试分类
黑盒测试和白盒测试
黑盒测试(Black Box -Test)指的是把被测试的软件看做一个黑盒子,我们不去关心盒子里边的结构是什么样子,只关心软件的输入数据和输出结果
有人把黑盒测试比作中医,通过“望闻问切”来判断是否有问题。
“望”:观察软件的行为是否正常。
“闻”:检查输出的结果是否正确。
“问”:输入各种信息,结合“望”,“闻”来观察软件的响应。
“切”:像中医一样给软件“把把脉”,敲击一下软件的某些“关节”
白盒测试(White Box Testing),指的是把盒子盖打开,去研究里边源代码和程序结构。
静态测试和动态测试
静态测试,是指不实际运行被测试软件,而只是静态的检查程序代码、界面或者文档中可能存在的错误的过程。
动态测试:是指实际运行被测程序,输入相应的测试数据,检查