软件测试是为了尽早发现软件缺陷,确保缺陷修复,以提高软件质量,决定软件质量的关键是需求分析、设计和实现,而测试是贯穿于上述过程的一种检查手段。即便功能开发好了,没有经过测试,这也是一个不可靠的程序。
本文主要详细的介绍软件测试基础知识盘点,分别从软件测试的目的、原则、对象、分类、测试流程及注意事项等几个方面来详细介绍的。
什么是软件测试
软件测试是描述一种用来促进鉴定软件的正确性、完整性、安全性和质量的过程。换句话说,软件测试是一种实际输出与预期输出之间的审核或者比较过程。软件测试的经典定义是:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。
简单地说,软件测试是为了发现错误而执行程序的过程。 软件测试是软件质量保证(QA)的一个重要环节。
软件测试的目的
测试是程序的执行过程,目的在于发现错误;
一个好的测试用例在于发现了至今未发现的错误;
一个成功的测试是发现了 至今未发现的错误的测试;
软件测试原则
所有的软件测试都应追溯到用户需求
应当把“尽早地和不断地进行软件测试”作为测试者的座右铭
完全测试是不可能的,测试需要终止
测试无法显示软件潜在的缺陷;
充分注意测试中的群集现象
程序员应避免检查自己的程序
尽量避免测试的随意性
软件测试对象
软件测试贯穿于整个软件生命周期中,不同阶段测试的对象和方法不同。
主要包括可执行研究报告、项目实施计划、软件需求说明书或系统功能说明书。开发阶段的概要设计说明书、详细设计说明书以及源程序。
软件测试分类
软件测试主要分为白盒和黑盒,白盒关心软件内部设计和程序实现,依据是设计文档;而黑盒不关心软件内部,只关心输入输出,依据是需求文档。白盒一般由开发人员负责,测试单元代码,我们一般所认为的软件测试工程师做的是黑盒测试,负责整体系统流程测试。
黑盒测试又包括:
功能测试(根据需求说明,验证功能)、用户界面效果(易用性、视觉效果)、性能测试(处理业务的速度)、健壮性测试(异常情况下,系统的容错能力和恢复能力)、安全性测试、压力测试(极限状态的负载量)、可靠性测试、安装/卸载测试
黑盒测试的方法:
等价类划分(划分相同价值的集合,避免重复性工作)、边界值分析、错误推测法、因果图法、场景分析法。
其实还有一种是灰盒测试,针对程序的接口,关注输出对于输入的正确性,通过表征现象、条件来判断内部的运行状态。主要用于及集成测试的阶段。
软件测试的阶段
1、单元测试,即一个个功能模块进行测试(白盒测试)
2、集成测试,将接口集成后,测试接口传输数据的准确性(黑盒、白盒测试,也称为灰盒测试)
3、系统测试,联网后,整体流程测试(黑盒测试)
4、验收测试,由客户验收的测试(黑盒)
软件测试的流程
1、制定测试计划,根据需求安排人员、项目阶段、时间、测试工具、浏览器等;
2、设计测试用例,根据需求规格说明书,写清测试的条件、步骤、结果,即如何测;
3、执行测试,当测试计划、用例已审批且测试对象开发完后即可开始,发现问题提交bug给开发,修复完再回归测试;
4、写测试报告,内容包括本阶段测试了什么功能,有哪些问题,问题严重性以及提出问题若不能修复的备选方案;
5、当前功能性测试用例通过率达100%,非功能性测试用例通过率达90%,且最近时间内测试无暴漏情况,测试结束。
软件测试中应该注意的事项
1)有合法的数据输入,同样有非法的数据输入
2)在对程序修改之后应该进行回归测试
3)应充分注意测试中的集群现象(发现的问题越多,未发现的问题也越多)
4)妥善保留测试计划、测试用例和相关的测试报告
5)对测试结果做全面检查,避免遗漏
6)严格执行测试计划,排除测试的随意性
-
软件测试
+关注
关注
2文章
229浏览量
18584
发布评论请先 登录
相关推荐
评论