上海大学白盒测试

时间:2022-10-27 15:00:09 手机站 阅读量:

下面是小编为大家整理的上海大学白盒测试,供大家参考。

上海大学白盒测试

 

 1、 用白盒测试验证单元的基本功能,用黑盒测试的思索方法设计测试用例 2、 黑盒测试中使用白盒测试的手段,常称为“灰盒测试” 3、 白盒测试需要对程序的内部实现非常熟识,黑盒测试是完全基于对系统需求的了解 4、 仅仅使用白盒测试,或者仅仅使用黑盒测试都不能系统地全面测试一个软件 白盒测试的策略 1、 桌面检查:指程序员实现指定功能后,进行单元测试之前,对源代码进行的初步检查 2、 单元测试(动态测试);在传统的结构化编程中,经常把一个函数,过程称为一个单元。而在面对对象的编程中一般把类作为单元进行测试。单元测试又为模块测试,是为验证程序单元的正确性而进行的测试 3、 代码评审:一般是在编码的初期或编写过程中采纳的一种有同行参加的评审活动 4、 同行评审:应用 cmm(软件成熟度)中的术语,其应用广泛,如用在源代码上,就是代码评审 该过程一般由开发人员、测试人员、设计师参加。其目的是检查代码中的缺陷,交换相关代码的书写思路,并建立一个对代码的标准集体阐述。

 5、 代码走查:一般不让代码的创建者参加,主要是为了从其他角度发觉软件缺陷 6、 静态分析:通常需要帮助工具支持,通过提取代码信息,进行统计,依据统计对源代码进行质量评估。代码规章检查也是静态分析的一方面 白盒测试又称结构测试,是透亮

  盒测试,规律驱动测试或基于代码的测试,测试单元内部如何工作的方法,其目的是通过检查软件内部的规律结构,对软件中规律路径进行掩盖的测试,可以掩盖全部代码,分支,路径和条件。

 白盒测试的优点:1、可以检查内存的泄露 2、可以检查特别处理分支语句是否正确 3、执行了多少规律,可以作为衡量测试是否完整的一个指标 白盒测试和黑盒测试的联系 5、 用白盒测试验证单元的基本功能,用黑盒测试的思索方法设计测试用例 6、 黑盒测试中使用白盒测试的手段,常称为“灰盒测试” 7、 白盒测试需要对程序的内部实现非常熟识,黑盒测试是完全基于对系统需求的了解 8、 仅仅使用白盒测试,或者仅仅使用黑盒测试都不能系统地全面测试一个软件 白盒测试的策略 7、 桌面检查:指程序员实现指定功能后,进行单元测试之前,对源代码进行的初步检查 8、 单元测试(动态测试);在传统的结构化编程中,经常把一个函数,过程称为一个单元。而在面对对象的编程中一般把类作为单元进行测试。单元测试又为模块测试,是为验证程序单元的正确性而进行的测试 9、 代码评审:一般是在编码的初期或编写过程中采纳的一种有同行参加的评审活动 10、 同行评审:应用 cmm(软件成熟度)中的术语,其应用广泛,如用在源代码上,就是代码评审 该过程一般由开发人员、测试人员、设计师参加。其目的是检查代码中的缺陷,交换相关代码的书写思路,并建立一个对代码的标准集体阐述。

 11、 代码走查:一般不让代码的创建者参加,主要是为了从其他角度发觉软件缺陷 12、 静态分析:通常需要帮助工具支持,通过提取代码信息,进行统计,依据统计对源代码进行质量评估。代码规章检查也是静态分析的一方面 常用的白盒测试用例设计技术 1、 规律掩盖测试 2、 循环掩盖测试 3、 基本路径掩盖测试

 4、 数据流分析 5、 信息流分析 用于白盒测试的测试工具可以分为内存泄露检查工具,代码掩盖率检查工具,性能测试工具 软件质量的衡量指标:1、缺陷密度:每千行代码的缺陷数(11.95 一级标准,5.95 二级标准,2.39三级标准,0.95 四级标准,0.32 五级标准)

 2、顾客的满足程度 3、牢靠性 提高软件代码质量的常用方法:

 1、 在项目初期就制定具体地质量管理和质量保证策略 2、 对开发人员进行技术、业务、开发工具等方面的培训 3、 制定编码法律规范并强行执行 4、 启用审查机制,施加白盒测试策略 编码法律规范的主要作用:

 1、 牢靠性 2、 可读性/可维护性 3、 移植性 代码审查清单:更多的是作为法律规范的补充 代码质量度量的四种常用方法:

 1、代码行:用程序中的代码行多少来表示程序大小和简单性(400-800 行为最佳模块)

 2、Halstead 软件科学法:(试验法,不太适用)n1 程序中消失的各不相同的运算符个数,n2

  程序中消失的各不相同运算元的个数,N1 运算符消失的总数,N2运算元消失的总数 3、结果度量:扇入:被调用的次数

 扇出:调用的次数(5 个以内)扇入不是重要的简单性指标,而简单性随程序间扇出的平方而提升 4、圈简单性(少与 10):McCabe 的圈简单性测度被用来量化程序的可测试性和可理解性 代码检查工具 工具名称 介绍 优点 不足 PC-Lint 支持 C/C++ 工具简洁有用 可以选择编码法律规范和标准 数据检查技术 界面不友好 危急的用法 兼容性问题 CodeWizard 是 Parasoft 的编程帮助工作 供应编码规章检查功能 图形用户界面,便利规格定制 分析速度慢 Logiscope 可以进行静态、动态测试 图形界面,可以生成代码质量报告 规章不多 Testbed 对 C 语言进行规章检查,也可以进行静态测试,动态测试 规章比较多 规章定制麻烦,有时会误报,要人为推断 QAC 提高软件产品质量和质量和质量标准的深层次静态分析工具 规章多,速度快 规章检查自动化 可以制定规章

 用 Logiscope 评价质量的方法分成三个连续的阶段:

 一、度量元级 二、准则级 三、质量因素级 规律测试、循环测试和基本路径测试是三种传统的白盒测试方法 规律掩盖测试的几种类型:

 1、 语句掩盖:设计若干个测试用例,使得每一条可执行语句至少执行一次

  优点:直观地从源代码中得到测试用例

  缺点:仅仅针对程序规律中显示存在的语句,是最弱的规律掩盖 2、 判定掩盖(分支掩盖):设计若干测试用例,使程序中每一个推断的取真分支和取假 分支至少各执行一次

  优点:比语句掩盖多几乎一倍的测试路径,具有和语句掩盖一样的简洁性

  缺点:由多个规律条件组合而成 3、 条件掩盖:设计若干测试用例,使程序中每一个推断内的每一个条件的各个可能取值 至少执行一次

  优点:比推断掩盖增加了对符合判定状况

  缺点:有足够的测试用例,条件掩盖并不能保证判定掩盖 4、 判定-条件掩盖:设计若干测试用例,使程序中每一个推断的每一个条件的全部可能取 值至少执行一次,并且每一个可能的推断结果也至少执行一次

  优点:综合了判定和条件的准则

  缺点:未考虑的组合条件 5、 条件组合掩盖:设计若干测试用例,使程序中每个推断的全部可能的条件取值组合 至少执行一次 优点:线性地增加测试数量 缺点:综合了,语句,分支,条件,分支/条件的优点 6、 路径掩盖:设计若干测试用例,掩盖被测试对象中的全部可能路径 优点:掩盖面广 缺点:路径以分支的指数级别增加(假如有 10 条路径,则需要执行 1024个用例)

 循环掩盖测试可以分为以下四种:

 一、简洁循环:

  整个跳出循环  只有一次跳过循环  两次通过循环  M 次通过循环,(m<n,n 为循环次数)

  N-1,n 次通过循环

 二、嵌套循环:

  从最内层次开头,将其他循环设置最小值  对最内层循环使用简洁循环,而使外层次的迭代参数最小  由内向外构造下一次循环的测试 三、串接循环:假如串接循环的循环次数都彼此独立,可以使用简洁循环次数的策略测试,否则推举使用嵌套循环的方法进行测试 四、不规章循环 基本路径测试方法是一种简化路径数的测试方法,它是在分析程序掌握流程图的基础上,通过分析掌握构造的环路简单性,导出基本可执行的路径集合,从而设计测试用例的方法 程序的环路简单性是通过鉴定 McCabe 简单性度量方法来计算的,程序简单性度量值称为环路简单度,也称圈简单度 如何知道掌握流图中究竟有多少个独立的路径?  第一种方法:流图中区域的数量对应于环型的简单性  其次种方法:V(G)=E-N+2(E 为边数,N 为结点)

 McCabe 路径测试总结:McCabe 环路简单度取决于程序掌握论结构的简单度,环路简单度是可加的,多个模块的简单度是单个模块简单度的总和,单个模块简单度不超过 10 McCabe 路径测试的缺点:简洁 if 语句和循环语句的简单度一样,模块接口当成一个简洁分支处理,一千行挨次语句与一行语句的简单度一样 执行测试用例时,为了采集结果可采纳以下两种方法:

 1、 修改被测函数,使其返回验证的预期结果 2、 添加一个全局变量,在程序中把验证的值赋给该全局变量 圈简单度:

 1 If a or b 2

 X 3

 Else 4

  Y

 单元测试:是按测试阶段划分的一种测试方法,通常在编码阶段进行,主要是对承袭模块进行测试,主要采纳白盒测试手段,帮助黑盒测试的方法,其目的是在单元测试集成前发觉缺陷,发觉设计/实现中的规律错误。

 单元测试的对象:(面对结构化:函数,过程 面对对象:类)

 测试策略:1、理解设计 2、先粗略地看一源代码 3、仔细地走读代码一两遍 4、设计测试用例(流程图,用例表)

 5、搭建测试环境 6、执行测试用例 7、从新设计测试用例并执行

 8、分析推断,总结 1b 2 1a 4 圈简单度为:3 可执行路径:6-5+2=3

  测试过程:

 1、 方案:确定测试需求,制定测试策略,确定测试所用资源 2、 设计:设计单元测试模型,制定方案,制定具体测试用例 3、 执行:依据单元测试方案用例对单元测试进行测试,验证结果 4、 评审:对单元测试进行评审,主要进行完备性评估 单元测试内容:

 1、 功能点测试:是否实现设计要求的功能点,无遗漏 2、 掩盖率:语句掩盖和分支掩盖 3、 模块接口测试:参数的输入,参数范围的推断,输出的类型,值的合理性 4、 内部数据流的测试:初始化,特别/错误处理,内部变量的使用 单元测试的过程:

 1、 设计一个能使系统运行的测试用例 2、 设计功能的正向测试用例 3、 设计功能的反向测试用例 4、 设计其他测试用例,验证设计对模块的要求(性能,可恢复,平安性)

 配置模块测试项目:标识符,函数名称,代码行,简单度 测试通过标准:全部单元测试用例被执行,语句掩盖和分支掩盖达到 100%,所发觉的缺陷被修改并回归测试通过,单元测试报告被批准 失败测试:缺陷密度达到 15%,修改会导致 20%以上函数接口(重大设计结构),重大功能点错误(20%)

 在圈简单度大于 3,语句大于 20 时要进行单元测试 白盒测试工具的主要测试内容包括词法分析和语法分析,静态错误分析,动态检测 编写目的的步骤:

 1、 编写本单元测试报告的目的 2、 对单元测试结果进行整理和汇总 3、 为软件单元的评审验证供应依据 4、 纳入软件产品配置管理库 测试过程:进度支配表 驱动摸块 被测摸块 桩摸块 桩摸块 桩摸块 测试用例 测试结果

 项目 时间 结果形式

 测试结果:(代码审查结果表)

 BUGID 审查人员 审查日期 问题描述

  测试用例执行结果统计表 测试项 用例号 测试特性 用例描述 结果 BUGID

  单元测试提交产品列表:源代码文件,测试用例文件,测试日志文件,掩盖率统计文件,性能分析文件,缺陷报告单,单元测试报告 质量评估是通过单元测试过程和结果进行分析而得到的对被测试单元的代码质量的一种评价 数据分析得最初是随着编译系统要生成有效的目标码而消失的,这类方法主要用于代码忧化 数据流分析能够发觉下面的缺陷:

  变量被定义,但是从来没有使用  全部使用的变量之前没有被定义  变量在使用之前被定义两次 静态白盒测试简洁发觉的错误  未使用代码的问题(冗余代码)

  不符合编码标准的问题(编码标准和法律规范,代码中的命名规章错误)

  规律错误(条件语句-冲突条件推断,循环语句-死循环,SWITCH 语句和 BREAK 语句,多线程错误(多个线程试图同时访问或者修改共享资源造成的),读取数据错误)

  集成错误(数据错误错误)

  重用错误(代码复用)

 基本路径测试是一种以程序内部掌握结构为基础的白盒测试技术 掌握流图描绘的是程序的掌握流程,而不关怀程序的数据操作 编码法律规范的作用是增加程序代码的牢靠性,可移植性,可维护性 代码检查的作用是为了发觉代码中潜在的错误或缺陷 白盒测试是以程序内部规律结构为基础的测试技术

推荐访问:上海大学 测试

版权声明 :以上文章中选用的图片文字均来源于网络或用户投稿 ,如果有侵权请立即联系我们 , 我们立即删除 。