




免费预览已结束,剩余9页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
广西科技大学计算机学院广西科技大学计算机学院 软软件件测测试试技技术术 实实验验报报告告书书 实验一实验一 白盒测试白盒测试 学生姓名 学生姓名 xxxx 学学 号 号 xxxx 班班 级 级 xxxx 指导老师 指导老师 xxxxx 专专 业 业 计算机学院软件工程计算机学院软件工程 提交日期 2014 年 10 月 20 日 白盒测试实验报告白盒测试实验报告 一一 实验内容实验内容 1 系统地学习和理解白盒测试的基本概念 原理 掌握白盒测试的基本技术和方法 2 举例进行白盒测试 使用语句覆盖 判定覆盖 条件覆盖 判定 条件覆盖 组合 覆盖 路径覆盖进行测试 3 通过试验和应用 要逐步提高和运用白盒测试技术解决实际测试问题的能力 4 熟悉 C 编程环境下编写 调试单元代码的基本操作技术和方法 5 完成实验并认真书写实验报告 要求给出完整的测试信息 如测试程序 测试用 例 测试报告等 二二 实验原理实验原理 白盒测试原理 已知产品的内部工作过程 可以通过测试证明每种内部操作是否符合 设计规格要求 所有内部成分是否已经过检查 它是把测试对象看作装在一个透明的白盒 子里 也就是完全了解程序的结构和处理过程 这种方法按照程序内部的逻辑测试程序 检验程序中的每条通路是否都能按预定要求正确工作 其又称为结构测试 对于该实验的例子给出其流程图如下图所示 我们来了解白盒测试的基本技术和方法 语句覆盖语句覆盖是指选择足够的测试用例 使得程序中每个语句至少执行一次 如上例选择 测试用例 x 1 y 1 和 x 1 y 1 可覆盖所有语句 判定覆盖判定覆盖是指选择足够的测试用例 使得程序中每一个判定至少获得一次 真 值和 假 值 从而使得程序的每个分支都通过一次 不是所有的逻辑路径 选择测试用例 x 1 y 1 和 x 1 y 1 可覆盖所有判定 条件覆盖条件覆盖是指选择语句多数的测试用例 使得程序判定中的每个条件能获得各种不同 的结果 选择测试用例 x 1 y 1 和 x 1 y 1 可覆盖所有条件 判定判定 条件覆盖条件覆盖是指选择足够多的测试用例 使得程序判定中每个条件取得条件可能的 值 并使每个判定取到各种可能的结果 每个分支都通过一次 即满足条件覆盖 又满足 判定覆盖 选择测试用例 x 1 y 1 和 x 1 y 1 可覆盖所有判定 条件 条件组合覆盖条件组合覆盖是指选择足够的测试用例 使得每个判定中的条件的各种可能组合都至 少出现一次 以判定为单位 找条件组合 注 a 条件组合只针对同一个判断语句存在多个条件的情况 让这些条件的取值进行 笛卡尔乘积组合 b 不同的判断语句内的条件取值之间无需组合 c 对于但条件的判断语句 只需要满足自己的所有取值即可 选择测试用例 x 1 y 1 x 1 y 1 x 1 y 1 和 x 1 y 1 可覆盖所有条件组合 路径覆盖路径覆盖是分析软件过程流的通用工具 有助分离逻辑路径 进行逻辑覆盖的测试 所用的流程图就是讨论软件结构复杂度时所用的流程图 三三 实验方法实验方法 1 语句覆盖语句覆盖 测试用例输入输出 magic判定 M 的取值判定 N 的取值覆盖路径 x 1 y 112TFabef x 1 y 10FTacdf 2 判定覆盖判定覆盖 测试用例输入输出 magic判定 M 的取值判定 N 的取值覆盖路径 x 1 y 112TFabef x 1 y 10FTacdf 3 条件覆盖条件覆盖 测试用例输入输出 magic判定 M 的取值判定 N 的取值覆盖路径 x 1 y 112TFabef x 1 y 10TTacdf 4 判定判定 条件覆盖条件覆盖 测试用例输入输出 magic判定 M 的取值判定 N 的取值覆盖路径 x 1 y 112TFabef x 1 y 10TTacdf 5 条件组合覆盖条件组合覆盖 测试用例输入输出 magic判定 M 的取值判定 N 的取值覆盖路径 x 1 y 112TFabef x 1 y 10TTacdf x 1 y 10TTacdf x 1 y 10TTacdf 6 路径覆盖路径覆盖 测试用例输入输出 magic判定 M 的取值判定 N 的取值覆盖路径 x 1 y 112TFabef x 1 y 10TTacdf x 12 y 11TFacef 本例覆盖路径 abdf 不存在 四四 实验结果实验结果 根据上面设计的测试案例 编写程序后 白盒测试结果如下所示 1 语句覆盖语句覆盖 x 1 y 1 x 1 y 1 2 判定覆盖判定覆盖 x 1 y 1 x 1 y 1 条件覆盖条件覆盖 x 1 y 1 x 1 y 1 判定判定 条件覆盖条件覆盖 x 1 y 1 x 1 y 1 条件组合覆盖条件组合覆盖 x 1 y 1 x 1 y 1 x 1 y 1 x 1 y 1 路径覆盖路径覆盖 x 1 y 1 x 1 y 1 x 12 y 1 本例覆盖路径 abdf 不存在 五五 实验分析实验分析 对于白盒测试 在设计测试用例时首先对程序进行分析 从程序的内部结构出发设计 测试用例 涉及到程序的控制方法 源语句 编码细节 数据库设计等 设计测试用例时 应用了白盒测试中的多种测试方法 其中包括 测试覆盖 语句覆盖 分支覆盖 分支条 件覆盖等 基路径测试等方法 白盒测试中 对代码的测试比较透彻 但不容易生成测试 用例 而且测试工作量很大 因为白盒测试是基于代码的基础上 所以对变量的定义 数 据的分析 精度的度量都有严格的要求 同时 对于白盒测试的案例设计 要注意以下几点 1 保证每个模块中的所有独立路 径至少被执行一次 2 对所有的逻辑值均需要测试真 假两个分支 3 在上下边界 及可操作范围内运行所有循环 4 检查内部数据结构以确保其有效性 附件 测试实现源程序 附件 测试实现源程序 include static int sign 0 static char m T n T int logicExample int int int logicExample int x int y int magic 0 if x 0sign else magic x y 10 m F if magic 0 magic 0 sign 2 else n F return magic main int x y static int sign 0 static char m T n T char p 4 5 acef abef acdf abdf cout n cout x cout y cout magic 已知 已知 0 endl cout
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论