软件测试的定义:
>>测试的含义:
>>首先是一项活动,在这项活动中某个系统或组成的部分将在特定的条件下运行,结果将被观察和记录,并对系统或组成部分进行评价。
>>软件测试:
>>使用人工或者自动化手段,来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。(IEEE)
>>对软件测试的定义还有两种描述:
>>定义1:软件测试是为了发现错误而执行程序的过程;
>>定义2:软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计的一批测试用例并利用这些测试用例运行程序以及发现错误的过程,即执行测试步骤。
>>测试结果:
>>找出缺陷和故障;
>>显示软件执行正确
软件测试的目的:
>>根本目的:
>>发现/修改缺陷
>>满足用户需求,提高用户满意度
>>优化软件品质
软件测试的对象:
>>软件测试不等于程序测试;
>>软件开发过程中所产生的需求规格说明、概要设计规格说明、详细设计规格说明以及源程序、用户文档都是软件测试对象。
软件测试的环境:
>>测试环境:
>>软件+硬件+网络;
>>是指测试软件的时候,软件运行的平台;
>>测试环境的原则:
>>真实、干净、无毒、独立
软件测试的时间:
>>软件测试工作要尽早开展;
>>软件测试工作覆盖整个软件生命周期
软件测试信息流程及周期性:
>>测试的信息流程
>>测试过程中需要三类输出:软件配置、测试配置和测试工具
>>测试最终的结果或输出:得到软件的功能正确或找出缺陷
>>软件测试周期性
>>软件测试周期性是指测试-改错-在测试-在改错
软件测试的停止依据:
>>根据单位时间内查找故障的数量和严重程度决定是否停止测试
软件测试的原则:
>>尽早的和及时的测试
>>测试前应当准备好测试数据和与之对应的预期结果这两部分
>>测试输入数据应包括合理的输入条件和不合理的输入条件
>>程序提交测试后,应当由专门的测试人员进行测试
>>严格执行测试计划,排除测试的随意性
>>测试用例的所有相关预期结果做全面的检查
>>充分注意测试当中的群体现象
>>保存测试计划、测试用例、出错统计和最终分析报告,为维护工作提供充分的资料
软件测试的误区:
>>软件测试技术要求不高,至少比编程容易多了
>>若发布的软件质量问题,那是软件测试人员的错
>>软件测试是测试人员的事,与开发人员无关
>>根据软件开发瀑布模型,软件测试是开发后期的一个阶段
>>有时间就多测试一些,来不及就少测试一些
>>软件测试是非建设性的工作,甚至是破坏性的,测试中发现错误是对责任人工作的一种否定