




已阅读5页,还剩24页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件工程教案 (5)测试技术 张海涛 *1 测试的产生测试的产生 w w 编程大师说:编程大师说:“ “任何一个程序,无论它多么小,总存在着错误。任何一个程序,无论它多么小,总存在着错误。” ” w w 初学者不相信大师的话,他问:初学者不相信大师的话,他问:“ “如果一个程序小得只执行一个简如果一个程序小得只执行一个简 单的功能,那会怎样?单的功能,那会怎样?” ” w w “ “这样的一个程序没有意义,这样的一个程序没有意义,” ”大师说,大师说,“ “但如果这样的程序存在的但如果这样的程序存在的 话,操作系统最后将失效,产生一个错误。话,操作系统最后将失效,产生一个错误。” ” w w 但初学者不满足,他问:但初学者不满足,他问:“ “如果操作系统不失效,那么会怎样?如果操作系统不失效,那么会怎样?” ” w w “ “没有不失效的操作系统,没有不失效的操作系统,” ”大师说,大师说,“ “但如果这样的操作系统存在但如果这样的操作系统存在 的话,硬件最后将失效,产生一个错误。的话,硬件最后将失效,产生一个错误。” ” w w 初学者仍不满足,再问:初学者仍不满足,再问:“ “如果硬件不失效,那么会怎样?如果硬件不失效,那么会怎样?” ” w w 大师长叹一声道:大师长叹一声道:“ “没有不失效的硬件。但如果这样的硬件存在的没有不失效的硬件。但如果这样的硬件存在的 话,用户就会想让那个程序做一件不同的事,这件事也是一个错话,用户就会想让那个程序做一件不同的事,这件事也是一个错 误。误。” ” “没有错误的程序世间难求。没有错误的程序世间难求。”James 1999James 1999 Date2 1 1 测试的方法与步骤测试的方法与步骤 “测试的目的就是寻找错误!” Date3 1-1 1-1 测试规则测试规则 w w 以发现错误为目的;以发现错误为目的; w w 成功的方案是能够发现尚未发现的错误成功的方案是能够发现尚未发现的错误 ; w w 再好的方案也会有没发现的错误;再好的方案也会有没发现的错误; w w 只能证明有错,不能证明没错。只能证明有错,不能证明没错。 Date4 1-1 1-1 测试规则测试规则 w w 在实践中,测试要考虑时间、费用等限制,不允许无在实践中,测试要考虑时间、费用等限制,不允许无 休止地测试。休止地测试。 “ “彻底地测试彻底地测试” ”只是一种理想。只是一种理想。 w w 测试有助于提高软件的质量,但是提高软件的质量不测试有助于提高软件的质量,但是提高软件的质量不 能依赖于测试。能依赖于测试。软件的高质量是设计出来的,而不是软件的高质量是设计出来的,而不是 靠测试修补出来的。靠测试修补出来的。 w w 为了测试的真实性,对测试的心理要求是为了测试的真实性,对测试的心理要求是“ “无情无情” ”。 Date5 1-2 1-2 测试的方法测试的方法 (1 1)黑盒法:)黑盒法: 只测输入和输出,不看内部结构。只测输入和输出,不看内部结构。 问题:是否能穷尽所有问题:是否能穷尽所有I/O?I/O? (2 2)白盒法:白盒法: 分析程序内部分析程序内部每个分支通路。每个分支通路。 问题:是否很耗费时间问题:是否很耗费时间? ? Date6 1-3 1-3 步骤步骤 (1 1)模块测试(单元测试)模块测试(单元测试) (2 2)子系统测试:多个模块的组装,主要测试接口部分)子系统测试:多个模块的组装,主要测试接口部分 (3 3)系统测试:完整的系统组装后测试)系统测试:完整的系统组装后测试 问题:问题: * *测试的目的是什么?测试的目的是什么? (4 4)验收测试:)验收测试: 系统测试系统测试 与系统测试的区别:用户的参与与系统测试的区别:用户的参与+ +实际数据实际数据 (5 5)平行运行:对于关系重大的系统,必须新旧系统同)平行运行:对于关系重大的系统,必须新旧系统同 时运行比对一段时间时运行比对一段时间 Date7 1-4 1-4 测试阶段的信息流测试阶段的信息流 w w 输入信息:输入信息: n n 软件配置软件配置需求说明书,设计说明书,源程需求说明书,设计说明书,源程 序清单序清单 n n 测试配置测试配置测试计划,方案(用例,数据,测试计划,方案(用例,数据, 结果)结果) w w 输出信息:找到的错误输出信息:找到的错误 + + 错误率数据错误率数据 Date8 2 2单元测试单元测试 2-1 目标1“模块” w 模块间的接口 w 局部数据结构 w 重要执行通路(选择,循环等) w 出错处理 w 影响以上4方面的边界条件 Date9 2-1 2-1 目标目标1“1“模块模块” ” w w 错误的声明(举例)错误的声明(举例) w w 错误的变量(未声明,未使用)错误的变量(未声明,未使用) w w 溢出与不相容溢出与不相容 w w 精度与初值精度与初值 Date10 2-2 2-2 目标目标22模块接口模块接口 w w 参数的性质、数目等是否对应?参数的性质、数目等是否对应? w w 调用是否正确?调用是否正确? w w 与内部函数的参数传递是否正确?与内部函数的参数传递是否正确? w w 外部文件读外部文件读/ /写,写,I/OI/O的错误处理的错误处理 w w 输出信息的拼写错误输出信息的拼写错误 Date11 2-3 2-3 代码审查代码审查 (1 1)代码审查小组)代码审查小组 组长,设计者,编码人员,测试人员组长,设计者,编码人员,测试人员 (2 2)过程:)过程: 分析文档分析文档- -程序逻辑程序逻辑- -提出问题提出问题 Date12 3 3 集成测试集成测试 3-1 组装测试方法 w 分模块测试一次性组装所有模块集成测试 w 分模块测试逐个模块组装直到集成测试 n典型的渐增测试 Date13 3-2 3-2 结合方法结合方法 (1)自顶向下的结合方法:主模块-子 模块 在树状结构中采用深度/广度搜索逐个测试 (2)自底向上的结合方法:子模块-主模块 问题:两种方法的问题? (3)混合法:以上两种方法结合使用 Date14 4 4 验收测试验收测试 4-1 测试方法黑盒法 “系统是否为用户预期的系统?” Date15 4-2 4-2 测试的范围测试的范围 w w 纯技术问题纯技术问题 w w 用户特别感兴趣的问题用户特别感兴趣的问题 w w 生产中的主要问题生产中的主要问题 w w 用户使用步骤的相关测试用户使用步骤的相关测试 w w 兼容性问题,可移植性问题兼容性问题,可移植性问题 Date16 4-3 4-3 软件配置的复查软件配置的复查 w w 文档与程序的一致性文档与程序的一致性 w w 为今后的维护做准备为今后的维护做准备 Date17 5 5 设计测试方案设计测试方案 “黑盒法为基本方案,白盒法做补充 !” Date18 5-1 5-1 边界值分析边界值分析 w w 经验:边界值最容易出错!经验:边界值最容易出错! w w 测试用例设计:测试用例设计: n n 边界值边界值 n n 边界值的相邻值边界值的相邻值 Date19 5-2 5-2 等价划分等价划分 w w 等价划分:经典黑盒法等价划分:经典黑盒法 n n 方法:划分出所有的方法:划分出所有的有效等价类有效等价类,进而划分,进而划分 所有所有无效等价类无效等价类 n n 例如:函数例如:函数strToIntstrToInt测试方案测试方案* * function function strToint(dstr:shortStr):integerstrToint(dstr:shortStr):integer 其中:其中:shortStrshortStr=array16of char=array16of char Date20 5-3 5-3 逻辑覆盖逻辑覆盖 (1 1)逻辑覆盖:有选择地执行某些具有)逻辑覆盖:有选择地执行某些具有 代表性的通路,用以替代穷尽法。代表性的通路,用以替代穷尽法。 “黑盒法与白盒法的结合黑盒法与白盒法的结合!”!” Date21 5-3 5-3 逻辑覆盖逻辑覆盖 (2 2)逻辑覆盖分类:)逻辑覆盖分类: w w 语句覆盖:每个语句至少执行一次;语句覆盖:每个语句至少执行一次; w w 判定覆盖:语句覆盖判定覆盖:语句覆盖+ +每个可能结果执行每个可能结果执行1 1次;次; w w 条件覆盖:语句覆盖条件覆盖:语句覆盖+ +条件表达式的每个结果条件表达式的每个结果 执行执行1 1次次 w w 条件条件/ /判定覆盖:条件覆盖判定覆盖:条件覆盖+ +判定覆盖判定覆盖 Date22 5-3 5-3 逻辑覆盖逻辑覆盖 (2 2)逻辑覆盖分类:)逻辑覆盖分类: w w 条件组合覆盖:选取足够多的测试数据使每个条件组合覆盖:选取足够多的测试数据使每个 判定表达式的组合条件都至少出现判定表达式的组合条件都至少出现1 1次次 w w 其它说法:其它说法: n n 点覆盖点覆盖= =语句覆盖;语句覆盖; n n 边覆盖边覆盖= =判定覆盖;判定覆盖; n n 路径覆盖路径覆盖= =条件覆盖条件覆盖+ +判定覆盖判定覆盖+ +组合覆盖组合覆盖 Date23 5-4 5-4 错误推测错误推测 w w 直觉直觉+ +经验经验 w w 僵化的模式僵化的模式+ +人的思考人的思考 Date24 5-5 5-5 小结小结 w w 首选首选“ “边界值分析法边界值分析法” ” w w 必要时必要时“ “等价划分法等价划分法” ” w w 错误推测作为补充错误推测作为补充 w w 逻辑覆盖对照检查逻辑覆盖对照检查 Date25 6 6 调试调试 “找出错误的位置,并设法改正!” Date26 6-1 6-1 常用的调试技术常用的调试技术 (1) (1) 输出存储器的内容(太多)输出存储器的内容(太多) (2) (2) 打印或输出语句(可能引入新的错误)打印或输出语句(可能引入新的错误) (3) (3) 自动跟踪工具(比较常用)自动跟踪工具(比较常用) Date27 6-2 6-2 调试策略调试策略 (1) (1) 试探法试探法 (2) (2) 回溯法回溯法 (3) (3) 对半查找对半查找 (4) (4) 归纳归纳/ /演绎法演绎法 Date28 7 7 软件可靠性软件可
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 贝类繁育工专项考核试卷及答案
- 玻璃退火工作业指导书
- 汽车货运理货员作业指导书
- 意匠纹版工效率提升考核试卷及答案
- 矿产地质调查员数字化技能考核试卷及答案
- 2025年功能神经病学运动神经元疾病的神经性病变分析题答案及解析
- 2025年口腔科常见口腔疾病预防控制考试答案及解析
- 房地产买卖合同标准文本
- 教师会议发言稿写作技巧与范文集
- 餐饮行业电子点餐票据模板设计
- 2025年全国企业员工全面质量管理知识竞赛题及参考答案
- 2025年《中华人民共和国民法典》网络知识竞赛100题题库(含答案)
- 2025四川省公安厅招聘辅警(448人)笔试参考题库附答案解析
- 《非物质文化遗产概论(第三版)》全套教学课件
- 2025新疆天泽和达水务科技有限公司部分岗位社会招聘28人笔试备考题库及答案解析
- 中望CAD机械版使用手册
- 定额〔2025〕1号文-关于发布2018版电力建设工程概预算定额2024年度价格水平调整的通知
- 纪录片提案登记表
- 五运六气方剂
- 精益生产之自働化培训课件
- 施工现场岗位安全风险告知卡
评论
0/150
提交评论