您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 企业财务 > 第01章 软件测试概述
1软件测试技术主讲人:刘伟2本节内容本学期将学习的内容课程考核方式软件测试的重要性什么是软件测试?3本学期将学习的内容选用教材:《软件测试教程》宫云战主编参考资料:《软件测试》RonPatton著软件测试网站,如本节内容本学期将学习的内容课程考核方式软件测试的重要性什么是软件测试?6课程考核方式平时成绩:以课堂提问、考勤、作业和课程实践成绩为考核依据,占总成绩的40%;期末考试:考核形式(笔试-闭卷),占总成绩的60%。7本节内容本学期将学习的内容课程考核方式软件测试的重要性什么是软件测试?8软件测试的重要性IT热门职位:软件测试、软件开发、软件销售、软件实施、技术支持等软件测试人员缺口达30万,并以每年20%的速度递增国内软件从业人员120万,能胜任软件测试职位的不超过5万,有3年以上从业经验的不到30000人,有5年经验的不到10000人国外软件开发与测试人员的人数比为1:1,微软1:2,而国内为5:1~10:1。9软件测试的重要性热门软件测试领域应用软件测试OS软件测试手机测试游戏测试网站测试硬件测试……10软件测试的重要性大型外包企业文思创新博彦科技中软资源……11学习建议寻找经典参考书[1]软件测试教程.宫云战主编。[2]软件测试.RonPatton著,张小松、王钰等译.机械工业出版社,2006年4月12学习建议关注最新动态软件测试网站,如51testing:Google;百度;……关注各大学、公司和求职网站的招聘信息,注意对测试人员的要求。关注每年的笔试面试题。多与05、06级学长们交流。13学习建议资格证书--国内认证四级软件测试工程师(全国计算机等级考试)软件评测师(软考/资格水平考试)14学习建议测试本身以外的知识:编程数据库(SQL)网络Linux软件工程英语15本节内容本学期将学习的内容课程考核方式软件测试的重要性什么是软件测试?16臭名昭著的软件错误用例迪斯尼公司发布的第一个多媒体光盘游戏《狮子王动画故事书》失败原因:未对市面上的不同类型的PC机型进行广泛测试。千年虫问题为节省存储空间,年份用两位数表示,导致2000年错误操作,以及不能识别2000年为闰年。17臭名昭著的软件错误用例1963年,美国用于控制火星探测器的计算机软件中的一个“,”号被误写为“.”,而致使飞往火星的探测器发生爆炸,造成高达数亿美元的损失。Intel奔腾芯片缺陷Windows2000安全漏洞软件是人编写的--所以不完美18什么是软件测试?IEEE定义软件测试:使用人工和自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别。19测试的发展软件开发初期:调试性测试,为了证明系统可以运行1950~1960:高级语言刚诞生,测试理论和方法发展缓慢1970年以后:软件行业迅速发展,测试理论和方法形成一套体系20软件测试过程单元测试单元测试单元测试单元测试…模块模块模块模块集成测试确认测试系统测试验收测试设计信息已集成的软件已测模块已确认的软件已检验的软件软件需求其它系统元素用户需求规范图1.1软件测试过程单元测试单元测试单元测试单元测试…模块模块模块模块模块模块模块模块集成测试确认测试系统测试验收测试设计信息已集成的软件已测模块已确认的软件已检验的软件软件需求其它系统元素用户需求规范图1.1软件测试过程21软件测试过程单元测试目的:检测程序模块中有无故障存在对象:软件设计的最小单位,与程序设计和编程实现关系密切集成测试目的:发现与接口有关的模块之间的问题方法:非增式集成测试法和增式集成测试法22软件测试过程确认测试目的:对软件产品进行评估以确定其是否满足软件需求的过程系统测试目的:针对系统中各个组成部分进行的综合性检验,证明系统的性能测试人员要求:系统开发人员不能进行系统测试。系统开发组织不能负责系统测试。23软件测试过程验收测试目的:向用户表明所开发的软件系统能够像用户所预定的那样工作主要任务:明确规定验收测试通过的标准;确定验收测试方法;确定验收测试的组织和可利用的资源;确定测试结果的分析方法;制定验收测试计划并进行评审;设计验收测试的测试用例;审查验收测试的准备工作;执行验收测试;分析测试结果,决定是否通过验收。24软件测试与软件开发的关系25软件测试经典的V模型26软件测试经典的W模型需求分析概要设计详细设计编码系统测试集成测试单元测试图1.4软件测试过程W模型需求测试概要设计测试详细设计测试模块集成系统构建系统安装验收测试需求分析概要设计详细设计编码系统测试集成测试单元测试图1.4软件测试过程W模型需求测试概要设计测试详细设计测试模块集成系统构建系统安装验收测试27软件测试环境的搭建测试环境=硬件+软件+网络+数据准备+测试工具硬件环境:PC机、笔记本电脑、服务器、各种PDA、嵌入式终端设备以及版本、配置等。软件环境:软件运行的操作系统,兼容性问题。28测试环境=硬件+软件+网络+数据准备+测试工具网络环境:C/S结构还是B/S结构?网络环境、网速、网络供应商等。数据准备:测试数据的准备。应考虑数据量和真实性,包括正确和错误的数据。测试工具:根据测试需求和实际条件来选择。29软件测试环境的搭建搭建软件测试环境还应注意以下几点:尽量模拟用户的真实使用环境;测试环境中尽量不要安装其它与被测软件无关的软件,但最好安装杀毒软件,以确保系统没有病毒;测试环境应与开发环境独立。30缺陷修改成本趋势图缺陷发现越晚,修复成本越高31缺陷放大模型图缺陷存在放大趋势放大系数n也逐渐增大32常见的导致软件错误的根源缺乏有效的沟通,或者没有沟通软件复杂度编程错误不断变更的需求时间的压力缺乏文档的代码软件开发工具人员的自大33测试的目的测试目的的演进34测试的目的G.Myers给出了关于测试的一些规则,可以把这些规则看作是测试的目标:1、软件测试是为了发现错误而执行程序的过程。2、测试是为了证明程序有错,而不是证明程序无错。3、一个好的测试用例在于他能发现至今未发现的错误。4、一个成功的测试是发现了至今未发现的错误的测试。35软件缺陷软件失败术语缺点(defect)偏差(variance)故障(fault)失败(failure)问题(problem)矛盾(inconsistency)错误(error)特殊(feature)事件(incident)缺陷(bug)异常(anomaly)对于测试人员来说,任何和所期望的偏差都应该上报36软件缺陷定义至少满足下列5个规则之一:1、软件未实现产品说明书要求的功能;2、软件出现了产品说明书指明不应该出现的错误;3、软件实现了产品说明书未提到的功能;4、软件未实现产品说明书虽未明确提及但应该实现的目标;5、软件难以理解、不易使用、运行缓慢或者-从测试员的角度看-最终用户会认为不好。37如:计算器软件缺陷例子:1+2=5死机或崩溃一些“后门”、产品说明书中未申明的功能电池电力不足时计算错误按键位置安排不好你知道吗?QWERTY键盘安排次序的原因是要降低打字的速度38软件测试中的误区软件开发完成后进行软件测试测试和调试是一样的测试组应当为保证质量负责过分依赖Beta测试把不合格的开发人员安排做测试测试跟着开发动,有时间就多测,没时间就少测好的测试一定要使用很多的测试工具……39软件测试的分类按方法分按技术分按级别分按类型分按技术分白盒黑盒功能结构按层次分按类型分需求设计单元集成系统系统集成验收静态动态按方法分40测试的原则尽早地和不断地进行软件测试问题发现越早,解决问题的代价就越小,这是软件开发过程中的黄金法则。41测试的原则完全测试程序是不可能的1、不可能测试程序对所有可能输入的响应2、不可能测试到程序每一条可能的执行路径3、无法找出所有的设计错误4、不能采用逻辑来证明程序的正确性42测试的原则避免测试自己的程序1、程序员轻易不会承认自己写的程序有错误2、程序员的测试思路有局限性,在做测试时很容易受到编程思路的影响3、多数程序员没有严格正规的职业训练,缺乏专业测试人员的意识4、程序员没有养成错误跟踪和回归测试的习惯43测试的原则找到的软件缺陷越多,就说明软件缺陷越多--俗称软件缺陷的“扎堆”现象软件测试越多,对测试的免疫力越强--杀虫剂怪事并非所有的软件缺陷都要修复每次测试的预期结果应当整理归档44测试的原则Zero-Bug原则--理想Good-Enough原则--原则Bug80-20原则一般情况下,在分析、设计、实现阶段的复审和测试工作能够发现和避免80%的Bug,而系统测试又能找出其余Bug中的80%,最后的5%的Bug可能只有在用户的大范围、长时间使用后才会暴露出来;一般情况下,80%的缺陷聚集在20%的关键核心业务模块中。45优秀的软件测试员应具备的素质基本素质沟通能力、自信心、幽默感、记忆力挖掘以往错误、耐心、怀疑精神、自我督促、洞察力发现重点;广泛的经验;表达能力、问题描述能力;会提问,会寻求Help;逻辑思维能力;团队协作能力;处理日常事务的能力和处理突然事件的能力46优秀的软件测试员应具备的素质专业素质对于系统测试,把握需求是第一位的;测试基础:明确测试流程中各个阶段的工作;测试方案的分析设计能力、测试案例的设计能力;测试工具的使用;编程能力,数据库知识,网络知识,操作系统知识;团队协作能力,与各小组之间的沟通能力;测试管理。47几个判断题1、软件测试一定可以找出程序中所有的错误2、找到的软件缺陷越多,就说明软件缺陷越多3、某软件公司在招聘软件评测师时,应聘者甲向公司做如下保证:①经过自己测试的软件今后不会再出现问题②在工作中对所有程序员一视同仁,不会因为在某个程序员编写的程序中发现的问题多,就重点审查该程序,以免不利于团结③承诺不需要其他人员,自己就可以独立进行测试工作④发扬咬定青山不放松的精神,不把所有问题都找出来,决不罢休×××××
本文标题:第01章 软件测试概述
链接地址:https://www.777doc.com/doc-3415721 .html