软件测试21种故障模型

上传人:M****1 文档编号:495976589 上传时间:2022-10-20 格式:DOC 页数:5 大小:35.50KB
返回 下载 相关 举报
软件测试21种故障模型_第1页
第1页 / 共5页
软件测试21种故障模型_第2页
第2页 / 共5页
软件测试21种故障模型_第3页
第3页 / 共5页
软件测试21种故障模型_第4页
第4页 / 共5页
软件测试21种故障模型_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《软件测试21种故障模型》由会员分享,可在线阅读,更多相关《软件测试21种故障模型(5页珍藏版)》请在金锄头文库上搜索。

1、21 种故障模型21 种故障模型总的来说分为输入故障模型,输出故障模型,数据结构故障模型 文件故障模型: 输入故障:1. 输入非法数据2. 输入默认值3. 输入特殊字符集4. 输入使缓冲区溢出的数据5. 输入产生错误的合法数据组合 输入故障:(1) 输入非法数据:分析缺陷产生的原因: 防止不正确的输入进入被测试软件。过滤掉不正确的输入,只允许合法输 入进去界面。输入了不正确的数据后,软件提示错误信息,拒绝不正确的输入。 允许不正确的输入进入系统并进行处理,软件失效时调用异常处理程序, 他通常包括重新设置内部变量,关闭文件,存储软件等代码。 如何发现这类问题: 输入类型:键入无效的类型常会产生错

2、误信息。输入长度:边界值: 测试方法小结:应用场合:GUI的输入测试方法:分别从输入数据的类型、输入数据的长度、输入数据的边界值等方 面进行考虑 测试信息的检查:除了考虑输入非法数据,还要留意错误信息本身 测试知识储备:牢记基本数据类型的边界值(2) 输入默认值 分析缺陷产生的原因:给变量赋值这一步经常会被开发人员跳过 开发人员有时不知道赋什么值就随便给赋了个值。 如何发现这类问题: 查找选项按钮,配置面板,安装屏幕 查阅源代码的数据声明部分 确定了测试数据,强制使用或者不使用默认值 测试方法小结 应用场合:需要有默认值的地方 测试方法:分别从选项按钮,配置面板,安装配置,开始界面等方面考虑

3、强制使用或者不使用默认值测试知识背景:理解需求规格说明书中对默认值的要求;同时深刻理解被 测软件的行业背景(3) 输入特殊字符集缺陷产生的原因:字符集包括普通跟特殊 程序设计语言有特定的处理字符和字符串的方法 如何发现这类问题: 根据被测软件所处的操作系统,程序设计语言,字符集等信息列出表格 根据经验,这类软件会没有相应挂起,测试人员可以通过任务管理器结束 它。 测试方法小结: 应用场合:需要接受字符输入的地方 测试方法:根据被测试软件的具体情况输入非法字符 测试知识储备:尽可能多的了解她们的特别含义,帮助我们更好的分辨(4) 输入使缓冲区溢出的数据 缺陷产生的原因: 开发人员没有考虑传送给内

4、存缓冲区的字符串的大小 如何发现这类问题: 弄清要测试的输入域的长度,输入最大字符测试 输入比最大字符还大的字符串 测试方法小结: 应用场合:需要接受字符输入的地方 测试方法:根据具体情况输入最大字符或者比最大字符还多的字符串 测试知识储备:了解域的长度,尽量多跟开发人员讨论(5) 输入产生错误的合法数据组合 缺陷产生的原因: 主要是多个输入值的组合,每个输入值已经单独测试过,但是没有进行组 合测试 如何发现这类问题: 描述的是有关单个内部数据结构的属性和内容 多个输入用作一个内部计算的操作数 测试方法小结: 应用场合:输入值之间存在依赖关系 测试方法:输入可能出现问题的组合输出故障:1. 产

5、生同一个输入的各种可能输出2. 输出不符合业务规则的无效输出3. 输出属性修改后的结果4. 屏幕刷新显示(1) 产生同一个输入的各种可能输出 缺陷产生的原因:产生的结果与先前的输入和被测系统的状态有关 如何发现这类问题:具有关于被测软件的业务知识,具备各种程序文档,明确一个输入可以产 生多个输出 测试方法小结应用场合:同一个输入对应多个输出 测试方法:测试输入对应的每个输出 测试知识储备:找出输入与输出之间的关系(2) 输出不符合业务规则的无效输出 缺陷产生的原因: 开发人员对业务不是特别了解了 如何发现这类问题:测试人员应该多学习所涉及领域的知识 有时在举出无效输出后,很难知道那些输入组合能

6、强制这些输出产生 测试方法小结: 应用场合:强制产生不符合业务背景的知识 测试方法:列举出所以的无效输出,然后逐一测试(3) 输出属性修改后的结果 分析缺陷产生的原因:输出常常具有可修改的属性,如颜色、形状、维数 及大小等。 如何发现问题;该测试方法可以使用在那些输出具有可编辑性、可修改性的 性能中。测试人员首先要仔细了解能够产生的输出,特别要注意具有可编 辑性的输出。测试人员的任务就是强势每个输出的产生,并编辑其属性, 然后再次强制输出产生。 测试方法小结:应用场合:输出的结果,可以由用户修改属性得出。测试方法:强制每个输出产生,并编辑其属性,然后再次强制产生输出。测试知识储备:全面理解需求

7、规格说明书中内容,了解能够产生的输出。(4) 屏幕刷新显示 分析缺陷产生的原因:通常GUI软件会产生刷新问题,因为GUI在对敞口进行覆盖、移动和调整大小 时,必须刷新屏幕才能使对象重新显示。但是如果经常刷新,容易减慢应用程 序的运行速度。 如何发现问题从起始位置移动对象。从覆盖对象的便捷开始一点点覆盖,是其中一个对象遮住另一个对象。 使用不同类型的对象。 测试方法小结 应用场合:一个对象包含在另一个对象中,拖动被半含对象时,可能出现刷新 问题测试方法:增加、删除和移动屏幕上的对象 测试知识储备:全面理解需求规格说明书中的内容,了解程序中对象之间的关 系,例如:包含关系等。数据结构故障模型1.

8、操作数与操作符不符2. 数据结构不符合约束3. 递归调用自身4. 数据共享或关联功能计算出错5. 计算结果溢出6. 数据结构溢出(1) 操作数与操作符不符缺陷产生的原因: 几乎每个运算符都有无效字符,对于具体的操作符,开发人员用的时候必 须检查错误代码 测试方法小结: 应用场合:进行数值计算或者图像操作的程序 测试方法:考虑操作数与操作符之间的限定关系,对于图形还要考虑各输 入数据之间的组合关系测试储备知识:掌握测试软件中操作符对操作数的要求(2) 数据结构不符合约束 缺陷产生的原因:对于内部数据结构都有约束 如何发现问题: 确认候选数据,并列出其可修改的属性 确定所有可修改属性的功能能属性

9、对数据进行初始化,改变每个属性以确定是否正确执行了约束 测试方法小结: 应用场所:应用程序的内部存在数据结构 测试方法:破坏内部数据的约束(3) 递归调用自身 缺陷产生的原因:函数常调用其他函数来完成工作 测试方法小结: 应用场合:需要和其他对象进行交互的地方 测试方法:考虑对象的自我交互或者复制(4) 数据共享或关联功能计算出错 缺陷产生的原因:单独的功能测试不会出现问题,结合其他功能时候出现 问题 如何发现问题: 能应用同样输入的每个功能 有类似的输出产生的功能 一个功能被包含在另一个功能的计算中 测试方法小结: 应用场合:一个以上的功能在同一时间运行 测试方法:以点代面,重点测试某一功能

10、,对可能与这个功能关联的其他 功能附带测试(5) 计算结果溢出缺陷产生的原因:当所有的数据和输入有效时,计算的最终结果也可能是 无效的 测试方法小结: 应用场合:应用程序执行能够导出或者待产生结果并进行内部存储的计算 测试方法:强制数据产生上溢或者下溢文件故障模型1. 文件系统超载2. 介质忙或不可用3. 介质损坏4. 文件名不合法5. 更改文件访问权限6. 文件内容受损(1) 文件系统超载 测试方法小结: 应用场合:系统较大,运行时需要较大的空间 测试方法:强制磁盘装满或者小于等于被测软件运行所需要的容量(2) 介质忙或不可用 缺陷产生的原因:当多个应用程序访问系统,速度慢了下来,所以没有对

11、 这些错误响应应用程序就会出现问题 测试方法小结: 应用场合:运行需要大量内存或者运行时候需要其他软件同时运行 测试方法:启动大量程序或者模拟磁盘状况(3) 介质损坏 缺陷产生的原因:损坏的介质错误代码没有在应用程序中编程处理;操作 系统本身有问题或者损坏的介质损坏了操作系统 测试方法小结: 应用场合:对安全的要求高,对灾难恢复的要求高 测试方法:用实际损坏介质的方法测试应用程序(4) 文件名不合法 缺陷产生的原因:操作系统本身有自己的命名规范 如何发现问题:操作系统不允许的文件名;一些应用程序不允许的文件名 测试方法: 应用场合:涉及所有需要输入文件名的应用程序 测试方法:操作系统不允许的文件名和应用程序不允许的文件名(5) 更改文件访问权限 缺陷产生的原因:在操作系统中,不同的用户对不同的文件具有不同的访 问权限 如何发现问题:打开两个应用程序,关闭同一个文件;打开一个文件,在 操作系统中修改文件的访问权限 测试方法小结:应用场合:需要对文件进行读写操作的场合 测试方法:修改文件访问权限或者用低权限的用户访问文件(6) 文件内容受损如何发现问题:手工损坏文件;使用测试工具测试方法小结: 应用场合:需要对文件格式和内容进行校验的应用程序 测试方法:手工损坏文件或者利用测试工具模拟 CRC 错误

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 建筑资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号