《软件测试基础理论概述.pptx》由会员分享,可在线阅读,更多相关《软件测试基础理论概述.pptx(44页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、纲要目录1、软件可靠性与软件缺陷概述2、软件测试的基本理论3、融入测试组织4、软件测试的人员要求第1页/共44页纲要目录1、软件可靠性与软件缺陷概述2、软件测试的基本理论3、融入测试组织4、软件测试的人员要求第2页/共44页软件可靠性与软件缺陷概述软件缺陷与故障1、软件缺陷和软件故障案例案例1:第一个Bug的故事案例2:美国迪斯 尼公司的狮子王游戏软件bug兼容性问题案例3:美国航天局火星登陆事故 系统测试 衔接问题案例4:跨世纪“千年虫”问题案例5:爱国者导弹防御系统炸死自家人 系统时钟误差积累案例6:Windows 2000 中文输入法漏洞案例7:英特尔奔腾浮点除法缺陷第3页/共44页软件
2、可靠性与软件缺陷概述软件缺陷与故障(续)2、软件缺陷和定义软件未达到产品说明书已经标明的功能;软件出现了产品说明书中指明不会出现的错误;软件未达到产品说明书中虽未指出但应当达到的目标;软件功能超出了产品说明书指明的范围;软件测试人员认为软件难以理解、不易使用,或者最终用户认为该软件使用效果不良。第4页/共44页软件可靠性与软件缺陷概述软件缺陷与故障(续)3、软件缺陷的理解该做的没做产品说明书中要求做的没做产品说明书中没有明确要求,(单独作为项目列出),但应该实现的。产品说明书中没有提到,但是测试人员认为应该做的。做了不该做的每一个额外的功能都有引入额外bug的风险,这不仅仅增加测试的工作量也增
3、加产品的质量风险,更重要的是增加额外功能的合理性是否确定没有按要求做“应该做成什么样子”,这些内容是依据产品说明书来定的第5页/共44页软件可靠性与软件缺陷概述软件缺陷与故障(续)4、软件缺陷的特征“看不到”-软件的特殊性决定了缺陷不易看到“看到但是抓不到”-发现了缺陷,但不易找到问题发生的原因所在第6页/共44页软件可靠性与软件缺陷概述软件缺陷与故障(续)5、软件缺陷的种类功能、特征没有实现或部分实现设计不合理,存在缺陷实际结果和预期结果不一致运行出错,包括运行中断、系统崩溃、界面混乱。数据结果不正确、精度不够。用户不能接受的其他问题,如存取时间过长,界面不美观。第7页/共44页软件可靠性与
4、软件缺陷概述软件缺陷与故障(续)4、软件缺陷的级别致命的:造成系统或应用程序崩溃、死机、系统悬挂、或造成数据丢失、主要功能完全丧失等。严重的:指功能或特性没有实现,主要功能部分丧失,次要功能完成丧失,或致命的错误声明。一般的:不太严重的错误,这样的软件缺陷虽然不影响系统基本使用,但没有很好的实现功能,没有达到预期效果。如次要功能丧失、提示信息不准确、用户界面差,操作时长等。微小的:一些小问题,对功能几乎没有影响,产品及属性仍可使用,如有个别错别字、文字排列不整齐等。建 议的:测试人员所提出的建议或质疑,如建议程序做适当的修改,来改善程序运行状态,或对设计不合理不明白的地方提出质疑。第8页/共4
5、4页软件可靠性与软件缺陷概述软件缺陷产生的原因造成软件缺陷的原因:技术问题团队工作软件本身软件缺陷组成分布第9页/共44页软件可靠性与软件缺陷概述软件缺陷的修复费用随着时间的推移,修复软件缺陷的费用惊人增长第10页/共44页软件可靠性与软件缺陷概述软件缺陷的修复费用(续)随着时间的推移,修复软件缺陷的费用惊人增长第11页/共44页纲要目录1、软件可靠性与软件缺陷概述2、软件测试的基本理论3、融入测试组织4、软件测试的人员要求第12页/共44页软件测试的基本理论软件测试技术的发展历程IEEEIEEE、ANSIANSI、ISOISO测试等同于调试第一阶段(1947年)第四阶段(20世纪80年代)第
6、五阶段(1996年)第二阶段(1957年)测试、调试区分TCMMTCMM、TSMTSM、TMMTMM第六阶段(2002年)StefaStefa系统的软件测试1、软件测试发展历史第13页/共44页软件测试的基本理论软件测试技术的发展历程2、软件测试的发展现状 由中国软件行业协会系统与软件过程改进分会联合多家机构发布中国软件测试行业2013年发展白皮书43.00%50.00%7.00%足够重视不够重视可有可无软件测试重要性调查结果第14页/共44页软件测试的基本理论软件测试技术的发展历程2、软件测试的发展现状(续)国外小一些的软件企业,软件开发与测试人员合适比基本上1:1,微软公司是1:2国外的软
7、件测试工程师基本上都是由从业多年的开发工程师转变而来初级软件测试工程师,到高级软件测试工程师,再到测试经理,这个在国外需要耗费10年左右的职场历程,在目前的中国,只需要3年甚至更短的时间。第15页/共44页软件测试的基本理论软件测试技术的发展历程2、软件测试的发展现状(续)第16页/共44页软件测试的基本理论软件测试职业对软件测试的误解如果发布的软件有质量问题,那是软件测试人员的错软件测试技术要求不高,至少比编程容易多了有时间就多测试一些,来不及就少测试一些软件测试是测试人员的事,与开发人员无关设计-实现-测试,软件测试是开发后期的一个阶段第17页/共44页软件测试的基本理论测试的原则1、完全
8、测试程序不可能输入量太大输出结果太多软件执行路径太多软件说明书是主观的。可以说从旁观者来看是缺陷。即使简单如Windows计算器的程序都复杂得难以全部测试第18页/共44页软件测试的基本理论测试的原则(续)3、测试无法显示潜伏的软件缺陷不能报告缺陷不存在无法保证缺陷不存在每一个软件项目都有一个最优的测试量第19页/共44页软件测试的基本理论测试的原则(续)4、找到的软件缺陷越多,就说明软件缺陷越多缺陷如害虫程序员心情不好程序往往犯同样的错误某些软件缺陷实乃冰山一解。5.杀虫剂怪事第20页/共44页软件测试的基本理论测试的原则(续)6.并非所有软件缺陷都要修复没有足够时间不算真正的软件缺陷修复的
9、风险太大警惕作出决策的后果7.什么时候才叫缺陷难以说清8.产品说明书从来没有最终版本9.软件测试员在产品小组中不受欢迎10.软件测试是一项讲究条理的技术专业第21页/共44页软件测试的基本理论软件测试技术概要第22页/共44页软件测试的基本理论软件测试技术概要1、自动化测试的优势提高软件测试质量提高测试效率提高测试覆盖率更好地重现软件缺陷能力更好地利用资源增加开发人员与测试人员的合作伙伴关系第23页/共44页软件测试的基本理论软件测试技术概要2、自动化测试的局限性 定制型项目周期很短的项目业务规则复杂的对象人体感观与易用性测试不稳定的软件涉及物理交互要理解为什么要进行自动化测试,可以从两方面考
10、虑:手工测试的局限性 软件自动化测试带来的好处第24页/共44页软件测试的基本理论软件测试技术概要工具本身并没有想象力和灵活性,根据报道,自动化测试只能发现15的缺陷,而手工测试可以发现85的缺陷。自动化测试工具在进行功能测试时,其准确的含义是回归测试工具,这时工具不能发现更多的新问题,但可以保证对已经测试过部分的准确性和客观性。多数情况下,手工测试和自动化测试应该相结合,以最有效的方法来完成测试任务。2、自动化测试的局限性(续)第25页/共44页软件测试的基本理论Q&AQ&A?1.软件测试能否发现所有的Bug呢?2.软件测试应该在项目的什么阶段开始?3.测试人员在进行测试时应该遵循什么原则?
11、4.进行软件测试的目的是什么?5.什么情况下自动化测试引入不具有经济效益?第26页/共44页纲要目录1、软件可靠性与软件缺陷概述2、软件测试的基本理论3、融入测试组织4、软件测试的人员要求第27页/共44页融入测试组织注意要想赢得大家的尊重是件不容易的事情。第28页/共44页融入测试组织快速融入团队需要注意的因素第29页/共44页融入测试组织软件测试团队建设1、学习型团队2、找到自己的位置3、无规矩不成方圆4、测试规范第30页/共44页融入测试组织软件测试团队建设1、学习型团队留下好学者、除去不思进取者。建立学习或培训机制测试知识库第31页/共44页融入测试组织软件测试团队建设2、找到自己的位
12、置图:一般外企的测试人员发展路线第32页/共44页融入测试组织软件测试团队建设3、无规矩不成方圆第33页/共44页融入测试组织软件测试团队建设4、测试规范软件测试方法指南测试用例设计规范缺陷录入规范测试计划规范测试报告规范测试工具使用规范全局规范缺陷分类缺陷等级测试提交流程规范缺陷状态变更规范第34页/共44页融入测试组织新手入门须知第35页/共44页纲要目录1、软件可靠性与软件缺陷概述2、软件测试的基本理论3、融入测试组织4、软件测试的人员要求第36页/共44页软件测试的人员要求测试员基本素质第37页/共44页软件测试的人员要求测试人员技能要求业务知识产品设计知识软件架构知识测试工具用户心理
13、学界面设计中的3种模型人机交互认知心理学编程技能文档能力第38页/共44页软件测试的人员要求测试人员技能要求用户心理学第39页/共44页软件测试的人员要求测试人员技能要求界面设计中的3种模型第40页/共44页软件测试的人员要求测试人员技能要求文档能力第41页/共44页软件测试的人员要求总结 新手需要清楚一点,仅仅具备一定的测试理论知识,懂得几个流行测试工具的使用,不代表就可以成为一名优秀的测试人员。要记住,测试技能只是进行软件测试需要掌握的一部分技能而已。测试人员应该掌握一定的编程技能。但是,很多测试新手往往就是因为不懂编程而“投奔”测试的。那么这些人是否就不能成为优秀的测试人员呢?未必,测试最重要的还是测试思维。还有一个经常被测试人员忽略的能力是文档有力。新入门的测试人员往往强调自己在发现Bug的能力、测试工具的使用和测试技能方面的提高,但是忽视了测试人员的最基本的一项基本功夫之一,即文档编写能力。但是所有这些能力的根本 是要抱着一颗好学的心,虚心学习所有对测试有帮助的东西,持续地学习,快速地学习,广泛的学习。第42页/共44页第43页/共44页感谢您的观看!第44页/共44页