版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件测试主要内容 概述 测试阶段 测试技术-黑盒测试 压力测试与性能测试 青牛软件如何做测试什么是软件测试 IEEE的定义: 使用人工和自动的手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别测试的目的 证明 检测 预防证明 获取系统在可接受风险范围内可用的信心 尝试在非正常情况和条件下的功能和特性 保证一个工作产品是完整的并且可用或者可被集成检测 发现缺陷、错误和系统不足 定义系统的能力和局限性 提供组件、工作产品和系统的质量信息预防 澄清系统的规格和性能 提供预防或减少可能制造错误的信息 在过程中尽早检测错误 确认问题和风险,并且提前确认
2、解决这些问题和风险的途径一个小实验 F规则: 屏幕上不允许出现任何形式的“F”。 统计下页屏幕上所有违背“F规则”的缺陷数量。 时间:30秒。 可以随意走动,不可相互交流。Dr. Juran,Quality Control Handbook Jurans “F” TestHow many letter Fs can you find on this page?Write the number down in this boxFEDERAL FUSES ARE THE RESULTS OF YEARS OFSCIENTIFIC STUDY COMBINED WITH THEEXPERIENCE
3、OF YEARS.支持“F”规则的检查单 F规则:屏幕上不允许出现任何形式的“F”。 你有没有发现含有“f”的单词,如“of”? 你有没有发现与“F”形状相似的图案? 你有没有检查图案边界外的屏幕? 你有没有将图案反过来或者转动角度来看? 你有没有检查其它符号中的“F”形状?例如字母“E”? 你有没有找到所有发“F”音的数字、单词和形状?例如14、75和“frames”? 你有没有检查屏幕后面? 你有没有检查屏幕边框和包装? 你有没有检查缩略语中的“f”发音? 你有没有将字母“t”上下颠倒再反过来看? (“t”= “f”)? 问题:如何界定“变形”?例如,“P”算不算?V模型测试阶段 单元测试
4、 集成测试 系统测试 验收测试单元测试 单元测试的对象是模块。 单元测试的依据是详细设计。 单元测试应对模块内所有重要的控制路径设计测试用例,以便发现模块内部的错误。 单元测试多采用白盒测试技术。单元测试任务包括 1 模块接口测试; 2 模块局部数据结构测试; 3 模块边界条件测试; 4 模块中所有独立执行通路测试; 5 模块的各条错误处理通路测试。开发过程中单元测试的原则 1、先写测试代码,然后编写符合测试的代码。至少做到完成部分代码后,完成对应的测试代码; 2、测试代码不一定覆盖所有的细节,但应该对所有主要的功能和可能出错的地方有相应的测试用例; 3、发现 bug,首先编写对应的测试用例,
5、然后进行调试; 4、不断总结出现 bug 的原因,对其他代码编写相应测试用例; 5、每次编写完成代码,运行所有以前的测试用例,验证对以前代码影响,把这种影响尽早消除; 6、不断维护测试代码,保证代码变动后通过所有测试; 测试阶段 单元测试 集成测试 系统测试 验收测试集成测试的目标 证明组成被测对象的各个模块以正确、稳定和一致的方式进行对接和交互。覆盖区域 模块间正确调用 模块间正确传输数据 非功能性问题,如接口的可靠性测试方法 使用黑(灰)盒测试技术针对被测模块的接口需求进行功能测试 性能测试、可靠性测试测试依据 系统的高层设计3个级别根据集成力度不同,一般可以把集成测试分成3个级别: 模块
6、内集成测试 子系统内的集成测试 子系统间的集成测试注意以下问题 在把各个模块连接起来时,穿越模块接口的数据时候会丢失 各个子功能组合起来,能否达到预期的父功能 一个模块的功能是否会对另一个模块的功能产生不利的影响 全局数据结构是否有问题,会不会被异常修改 单个模块的误差积累起来,是否会放大,从而达到不可接受的程度从下面几个维度考虑 为系统运行起来而设计用例 为正向测试而设计用例 为逆向测试而设计用例 为满足特定需求而设计用例 为高覆盖而设计用例集成测试策略1、大爆炸集成 迅速,测试用例要求比较少 一次成功的可能性比较小 问题定位和修改比较困难 容易遗漏 适用于维护型项目、被测系统比较小或者开发
7、质量和单元测试质量相当高2、自顶向下集成 驱动模块要求少 支持故障隔离 桩模块是最大成本 底层模块测试不充分 底层模块的修改可能破坏以前的测试包 适用于结构清晰或者希望尽早看到产品的系统功能3、自底向上集成 按照依赖关系树,从具有最小依赖性的底层组件开始,逐层向上集成 减少了桩模块的工作、支持故障隔离 可以并行开始 设计上的错误不易被发现 适用于底层模块被较早完成或者底层接口比较稳定的产品4、三明治集成 把系统分成3层,中间为目标层。对目标层上面的一层使用自顶向下的集成策略,对目标层下面的一层使用自底向上的集成策略,最后测试在目标层会合。 并行度比较高 中间层选取不恰当,可能会有比较大的驱动模
8、块和桩模块的工作量。5、基干集成 识别应用的控制组建部分、基干部分和应用子系统部分。 局部采用大爆炸集成,有些接口可能测试不完整 需要对系统的结构和相互依存性进行仔细的分析 适合于大型复杂项目。和其他策略复用6、基于功能的集成 从功能角度出发,按照功能的关键程度对模块的集成顺序进行组织。 所需时间比较少,测试用例比较少。 可以减少测试驱动的开发。 某些接口测试不充分 适用于关键功能具有较大风险或者功能比质量更关键的项目。7、高频集成 频繁的将新代码加入到一个已经稳定的基线中,以免集成故障难以发现,同时控制可能出现的基线偏差。 必须使用自动化和配置管理工具。 错误定位相对容易。 容易导致不应有的
9、可信度,使风险增加 适用于采用迭代或增量开发的产品。8、基于进度的集成 尽早开始,提高开发与集成的并行性。 总体上能缩短时间。 桩模块和驱动模块的工作量可能很大。 模块可能不稳定且会不断变动,导致测试的重复和浪费。 适用进度优先级高的项目。其他 基于风险的集成 基于事件的集成 基于使用的集成 Client/Server的集成 分布式集成测试分析 覆盖率 等价类划分 状态转换测试 边界值分析 特殊值测试 错误猜测测试工具 多为自己开发,或者需要二次开发 用于单元测试的工具也可以用于集成测试几个原则但不是绝对的 所有的公共的接口都必须被测试到 关键模块必须进行充分的测试 集成测试应当按一定的层次进
10、行 集成测试的策略选择应当综合考虑质量、成本和进度三者之间的关系 集成测试应当尽早开始,并以概要设计为基础 在模块和接口划分上,测试人员应当和开发人员进行充分的沟通 当测试计划中的结束标准满足时,集成测试结束 当接口发生修改时,设计的相关接口都必须进行回归测试 集成测试根据测试计划和方案进行,排除测试的随意性 测试执行结果应当如实的被记录测试阶段 单元测试 集成测试 系统测试 验收测试系统测试 将已经集成好的软件系统,作为整个基于计算机系统的一个元素,与计算机硬件、外设、其它的支持软件、数据等其它系统元素结合在一起,在运行环境下,对软件系统进行的测试。 提交给用户之前进行的最后阶段的测试,因此
11、,系统测试是产品的最后一道防线。包括 功能测试 性能测试、压力测试、容量测试 安全性测试、恢复性测试 GUI测试 健壮性测试、兼容性测试、可用性测试 可安装性测试、文档测试软件测试技术黑盒测试测试技术 黑盒测试基于规格 白盒测试基于代码主要内容 黑盒测试的介绍 功能测试 等价类划分 边界值分析黑盒测试的目的 黑盒测试不关注被测系统或被测组件的内部结构 基于需求规格说明书。 一些其他等价的提法基于规格的测试输入/输出测试功能测试 黑盒测试通常在系统接近完整集成时进行,比如在集成测试、界面测试、系统测试或者验收测试阶段 关注于被测软件的功能实现,证明需求已经被充分满足。试图发现如下错误 功能错误或
12、遗漏 接口错误,包括不同函数之间的接口、系统和数据文件之间的接口和与别的系统的接口等 性能错误 初始化和终止错误规格指导测试 规格是测试设计的出发点 系统规格可以是功能规格、性能规格、安全规格、用户使用场景规格或者风险规格 规格描述了被测对象正确或者可接受的一个基准 很多情况下,没有一个可用的最新的规格说明书。 所以,在测试设计时,把那些知识渊博的最终用户考虑进来作为那些缺少的和过期的规格说明书的补充是很有必要的。 测试设计的主要来源还是那些在规格说明书里明确说明的基准。分解系统需求 许多测试者在开始一个测试项目的时候,都会面临同样一个问题就是我们需要执行哪些测试用例来覆盖被测系统。 对于某些
13、大系统,要领是把它分解为小的可管理的实体 这正是测试设计的工作,就是把测试对象分解为小的可管理的实体,并且在这个层面上制定各自的测试用例。 当然,测试设计也是一种保证你覆盖被测系统所有方面的一种机制 设计测试用例是一项艰苦而精细的工作,没有任何自动化的工具可以帮助你去决定测试对象需要什么测试用例。而且每个测试对象都是不同的,测试工具不可能识别出哪些处理是正确的,哪些是错误的。 测试设计需要测试者的经验、推理和直觉。分解测试对象 测试设计关注于一组要测试的功能块,这些功能块又被分解为更小的功能块,直到测试用例,在这期间,需要用到很多测试分析技术。 一旦你已经将测试对象根据一种给定的标准分解成了单
14、个的组件,那你有很多的测试设计技术可以使用,这其中的很多已经成为标准。 文档化你的测试设计是至关重要的。通常把这个文档称为测试设计说明书,有现成的模版可用。IEEE standard, “Standard for Software Test Documentation”, ANSI/IEEE Std 829-1983, August 1983黑盒测试功能测试通过分析功能来设计测试 分析每个函数个体来定义一组测试标准分析每个函数个体来定义一组测试标准 重点分析:重点分析:函数标准(怎样才是正确的)函数输入函数输出函数内部条件函数内部状态黑盒测试等价类划分 等价类划分依赖于一个事实,即被测系统的输
15、入和输出(可以包括环境变量和逻辑操作)可以被分组或者划分为相关的组或类,这些类中的所有实例被系统以同样的方式处理。 这种技术的重要思想是测试类中的一个实例等同于测试所有的实例。也就是其中一个值能代表这个分区中的其他值。 等价类测试的目的就是从一个区域里找一个值来测试,如果这个值通过了测试,那我们就认为这个分区里所有的值的通过了测试。 因为测试所有的值是不可能的,采用这种技术就简化了问题.取值分区有效的有效的/无效的无效的数字取值中的复数、正数和数字取值中的复数、正数和0字符串取值中的空和非空字符串取值中的空和非空列表(列表(list)为空、不为空)为空、不为空数据文件存在与否、可写与否数据文件
16、存在与否、可写与否日期的千年问题日期的千年问题当月天数当月天数是否是工作日是否是工作日是否是上班时间是否是上班时间数据文件的类型:如数据文件的类型:如text, formatted data, graphics, video or sound数据文件存放介质。如:数据文件存放介质。如:hard drive, floppy drive, CD-ROM, network黑盒测试边界值分析 和等价类划分相关,边界值分析重点关注和等价类划分相关,边界值分析重点关注测试类中的边界值。测试类中的边界值。 通常在边界部分容易产生通常在边界部分容易产生BUG(第一个和(第一个和最后一个)最后一个)哪些是边界值
17、 星期一和星期天 一月和十二月 16位整数的32767和32768 屏幕上光标位置的左上角和右下角 打印报表的第一行和最后一行 用两位表示年份的时候的2000-1-1 一个字符或者最大长度的字符黑盒测试&白盒测试 白盒测试不保证需求覆盖,黑盒测试不保证实现覆盖 白盒测试可以揭示隐藏在代码中的错误 对于大的单元来说,黑盒测试的效率更高 黑盒测试的测试用例在规格完成之后就可以进行 不是替代品,并且经常交叉使用思考题 学生成绩由考试成绩和论文成绩两部分组成,总分100,其中考试成绩总分为75,论文成绩总分为25。 最后按总成绩进行分级,=70成绩为A,=50成绩为B,=30成绩为C,30成绩为D,其
18、他情况输出“FM”。 系统认为整数为有效输入。 设计测试用例。注意输出的等价类划分。压力&性能测试压力测试 也叫负荷测试 检查系统在瞬间峰值负荷下正确执行的能力 我们将系统折腾到什么程度而不会出错例如 当系统每秒平均出现1次调用的时候,应当对每秒调用10次执行测试。 把输入的数据量提高一个数量级来做测试 应当执行那些需要最大资源或者可能会引起大量的驻留硬盘的数据的测试用例 会引起系统颠簸的测试用例建议步骤 进行简单的多任务测试 在简单的压力缺陷被修正后,增加系统的压力直到中断 在每个版本循环中重复进行压力测试用例设计方法 规范导出法 边界值分析 错误猜测法性能测试得到系统的性能数据,包括 用户响应时间、系统响应时间、外部接口响应时间 主要指令的单
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年福建华南女子职业学院单招综合素质笔试模拟试题带答案解析
- 医护人员健康管理与福利政策
- 医院质量管理体系优化总结
- 2026年广州体育职业技术学院单招综合素质考试备考试题带答案解析
- 2026年黑龙江农业职业技术学院单招综合素质考试备考题库带答案解析
- 2026年黑龙江职业学院高职单招职业适应性考试参考题库带答案解析
- 2026年衡阳幼儿师范高等专科学校单招职业技能考试参考题库带答案解析
- 医疗单位员工职业素养提升
- 护理护理职业素养与心理调适
- 财务课件培训费
- (2025)医院医疗质量安全管控与不良事件防范专项总结(3篇)
- 2026年江西制造职业技术学院单招职业适应性考试模拟测试卷附答案
- 《中国特色高水平高职学校和专业建设计划(2025-2029年)》深度解读课件
- 2025耐高压置入导管增强CT使用与安全专家共识课件
- GJB1406A-2021产品质量保证大纲要求
- JGJT46-2024《施工现场临时用电安全技术标准》条文解读
- (高清版)TDT 1013-2013 土地整治项目验收规程
- 国家开放大学电大《计算机应用基础(本) 》 终结性考试试题答案(完整版)
- 《建筑基坑降水工程技术规程》DBT29-229-2014
- 2023年广东学业水平考试物理常考知识点
- 中外政治思想史-复习资料
评论
0/150
提交评论