软件测试v1.ppt

  1. 1、本文档共213页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件测试v1

软件测试 陈宁江 2007.12 内容摘要 测试概述 测试方法 测试过程 测试工具 软件中有错误 事例1:千年虫 1997年香港回归,香港新机场同时投入运营,然后因软件问题使新机场不能按要求运转,导致客货滞留 2007年,北京奥运会门票销售系统,由于未经过压力测试,导致系统开通5小时积被迫关闭 下一个…. 软件错误的定义 软件未达到产品说明书标明的功能 软件出现了产品说明书指明不会出现的错误 软件功能超出了产品说明书指明的范围 软件未达到产品说明书虽未指出但应达到的目标 软件测试人员认为软件难以理解、不易使用、运行速度缓慢、或者最终用户不满意 软件测试的概念 软件测试是指: 狭义上:测试是对软件产品质量的检验和评价 广义上:测试是软件产品生存周期内所有的检查、评审和确认活动 Glen Myers的观点 测试是一个程序的执行过程,其目的在于发现错误 一个好的测试用例很可能发现至今尚未察觉的错误 一个成功的测试用例是发现至今尚未察觉的错误的测试 软件测试是以最少的时间和人力,系统地找出软件中的错误和缺陷 软件测试的目的 软件测试的发展 20世纪60年代,无专门的测试活动 20世纪70年代,Myers等人的工作,使得软件测试成为研究课题 20世纪80年代,QA与测试受到重视 20世纪90年代,测试成熟度的研究,注重过程化、规范化 测试的不同视角 开发的立场: 千方百计找到一条路,证明没有错误? 第三方测试的立场: 千方百计找到一条路,证明存在缺陷! 软件测试的一些原则(1) 完全测试程序是不可能的 软件测试是有风险的 软件测试的一些原则(2) 开发人员或组织不应测试自己设计的程序 尽早地和不断地进行软件测试 测试无法显示所有潜在的错误 认真设计测试用例,严格执行测试计划,排除测试的随意性 找到的软件错误越多,说明存在的软件错误越多 并非所有的软件错误都能修复 测试人员在产品小组中不受欢迎 Davis的软件测试指导原则 1.所有的测试都应可追溯到客户需求 2.应该在测试工作真正开始前的较长时间就进行测试计划 3. Pareto原则:测试中发现的80%的错误可能来自于20%的程序代码 4.测试应从“小规模”开始,逐步转向“大规模” 5.穷举测试是不可能的 6.为了达到最有效的测试,应由独立的第三方来承担测试 软件质量中的Pareto原理 Boehm给出的度量中的前10个软件现象遵守Pareto分布(20/80): 20%的模块消耗80%的资源; 20%的模块包含80%的错误; 20%的错误消耗80%的修改成本; 20%的改进包含了80%的适应性维护成本; 20%的模块占用了80%的执行时间; 20%的工具使用占80%的整个工具的使用时间; … 其他的测试原则: 1.在设计测试用例时,应包括合理的输入条件和不合理的输入条件 2. 应当对每一个测试结果做全面检查 3.妥善保存测试计划、测试用例、出错统计和最终分析报告,为维护提供方便 4.检查程序是否做了应做的事仅是成功的一半,另一半是检查程序是否做了不该做的事 5.在规划测试时不要设想程序中不会查出错误 测试技术概览 软件测试方法的分类 从是否需要执行被测软件的角度,分为 静态测试 动态测试 从测试是否针对系统的内部结构和具体实现算法的角度,分为 白盒测试 黑盒测试 静态测试和动态测试 静态测试:采用人工检测和计算机辅助静态分析的手段,不运行被测试程序 人工测试:人工审查程序或评审软件 计算机辅助静态分析:利用静态分析工具对被测试程序进行特性分析,检查程序逻辑的各种错误和可疑的程序构造 动态测试:通过运行程序发现错误 黑盒 白盒 黑盒测试 已知产品所应具有功能,通过测试来检测每个功能是否都能正常使用 把程序看作黑盒,在程序接口进行测试 主要用于软件确认测试 主要方法: 等价类划分 边值分析 因果图 白盒测试 知道产品内部工作过程,根据程序内部的逻辑结构及有关信息设计测试用例,检查程序中所有逻辑路径是否都按预定的要求正确地工作 主要用于软件验证 主要方法 程序模块中的所有独立路径至少执行一次 对所有逻辑判定的取值(“真”与“假”)都至少测试一次 在上下边界及可操作范围内运行所有循环 测试内部数据结构的有效性等 测试难以彻底 理想情况下,白盒测试应该是穷举路径测试,但是: 穷举路径测试决不能查出程序违反了设计规范,即程序本身是个错误的程序 穷举路径测试不可能查出程序中因遗漏路径而出错 穷举路径测试可能发现不了一些与数据相关的错误 黑盒测试与白盒测试都不能使测试达到彻底 为了用有限的测试发现更多的错误,需要精心设计测试用例 测试用例 设计一个情况或者一组数据,软件程序在此情况下,必须能够正常运行并且达到程序所设计的执行结果。如果程序不能正常运

文档评论(0)

jiupshaieuk12 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档