白盒测试与代码质量_第1页
白盒测试与代码质量_第2页
白盒测试与代码质量_第3页
白盒测试与代码质量_第4页
白盒测试与代码质量_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第一章、白盒测试与代码质量1几个问题对测试过的软件有足够信心吗?系统测试覆盖了多少代码?某些难执行到的异常处理分支测试到了吗?实验室里无法难模拟出真实的测试环境,怎么办?2本章学习目标了解白盒测试的目的了解白盒测试和黑盒测试的联系掌握白盒测试的策略了解使用LogiScope度量代码质量3隐藏的错误使用一个经过运算处理后的数据作为除数进行运算:float Div=sqrt(2)*sqrt(2) - 2;float mod=0.0;.if(Div=0) printf(”除数为0,退出”); return;else mod=BeDiv/Div;4内容进度白盒测试白盒测试的目的白盒测试和黑盒测试的联系

2、白盒测试的策略代码质量代码度量使用LogiScope度量代码质量代码检查工具5白盒测试又称透明盒测试、逻辑驱动测试是测试被测单元内部如何工作的一种测试方法允许测试人员根据程序内部逻辑结构及有关信息来设计测试用例,对程序的逻辑结构进行测试可覆盖全部代码、分支、路径和条件等6白盒测试目的 保证一个模块中的所有独立路径至少被执行一次;对所有的逻辑值均需要测试真、假两个分支;在上下边界及可操作范围内运行所有循环;检查内部数据结构以确保其有效性。7白盒测试和黑盒测试比较8白盒测试的策略桌前检查(Desk Check) 单元测试(Unit Testing)同行评审(Peer Review) 代码评审(Co

3、de Review) 代码走查(Walkthrough) 静态分析(static analyse)9白盒测试对测试人员的要求 做白盒测试需要开发部门提供的资料了解软件语言了解软件开发技术有开发经验最好掌握白盒测试工具掌握白盒测试用例设计方法掌握开发人员编程中容易出现的问题,不断积累经验10内容进度白盒测试白盒测试的目的白盒测试和黑盒测试的联系白盒测试的策略代码质量代码度量使用LogiScope度量代码质量代码检查工具11软件质量软件质量GBT16260-1996(idt ISOIEC9126:1991)信息技术软件产品评价质量特性及其使用指南功能性:适合性、准确性、互操作性、依从性、安全性;可

4、靠性:成熟性、容错性、易恢复性;易用性:易理解性、易学性、易操作性;效率:时间特性、资源特性;可维护性:易分析性、易改变性、稳定性、易测试性; 可移植性:适应性、易安装性、遵循性、易替换性;常用指标缺陷率(缺陷密度 ):每千行源代码的缺陷数,每个功能点或其他单元中的缺陷数可靠性(运行n小时失效次数):运行小时的实效次数,平均无失效时间或者规定的时间段内无故障运行的概率顾客满意度12影响软件质量的因素13影响软件质量的因素1、数据质量管理可分为人工比对、程序比对、统计分析三个层次2、编程质量管理层次可分为黑盒测试、灰盒测试、白盒测试、编译检查、编程规范、编程逻辑、编程优化3、文档质量管理层次包括

5、文档规范、文档语法、文档语义、文档逻辑、文档美学、文档优化 4、措施质量管理层次包括质量检查、质量保证、预防不合格品、完美无缺5、项目管理质量包括组织资源、组建团队、设定目标、确定范围、确定优先级、管理风险、建立沟通机制等内容,其层次分为通用术语、通用过程、单一方法、基准比较、持续改进 6、过程质量管理层次,质量概念,不仅涵盖产品,还包括企业的整个运营过程,贯穿产业链的各个环节7、企业质量环境层次企业质量环境是有关创建和管理质量环境的管理,包括质量规划、资源组织、提供相关工具等,其层次可分为质量形象、质量制度、质量战略、质量文化、企业文化、全社会质量意识8、标准层次,谁掌握了标准的使用,谁掌握

6、了标准的制定权,谁就可以抢占先机9、人员质量是所有工作质量的基础。要提高工作质量,就要以人为本,根本的问题是提高人的质量14代码质量对软件质量的贡献代码是软件产品中的重要部分代码质量反映软件质量其它非代码因素也起着关键作用文档(设计、帮助、用户手册等)15制约程序员编写高质量代码的因素对需求和设计的理解不透彻对软件业务流程不熟悉没有开发经验对开发工具或开发语言不熟悉受情绪因素的影响等因素其它非代码因素也起着关键作用16如何提高代码质量培训业务技术工具和语言审查和监督编码规范测试.17编码规范和标准坚持标准和规范的原因可靠性可读性/可维护性移植性18代码审查单代码审查单代码审查单数据引用错误数据

7、声明错误计算错误函数参数错误比较错误输入/输出错误其它检查控制流程错误19代码质量度量程序复杂性:费用、周期、错误代码行度量法McCabe度量法Halstead软件科学法结构度量20代码度量-代码行度量21Windows的代码行复杂度22代码度量-Halstead软件科学法 程序=运算符化 + 运算元结构度量 Halstead公式N=N1+N2=n1log2(n1)+n2log2(n2) N1=运算符出现的总次数N2=运算元出现的总次数n1=不同运算元的个数n2=不同运算符的个数23代码度量-Halstead软件科学法 例:FORTRAN语言写出的交换排序的例子。 因此:预测的词汇量Hn1log2n1+n2log2n210log210+7log27 52.87实际的词汇量NN1+N228+2250程序的词汇表nn1+n210+71724代码度量-结构度量 扇入:调用该模块的模块计数;扇出:该模块所调用的模块计数;使用扇入、扇出来评价软件设计具有大扇入和大扇出的模块可能是不良设计。这种模块可能未能正确分解并需要重新设计。程序复杂性与扇出的平方成正比25McCabe度量法26辅助分析工具PC-lint:代码规则走查工具CodeWizard:C/C+代码分析工具McCabe:软件质量度量方法 TestBed:源代码检查工

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论