书签 分享 收藏 举报 版权申诉 / 29
上传文档赚钱

类型《软件质量保证与测试》-第六章-检查代码课件.pptx

  • 上传人(卖家):晟晟文业
  • 文档编号:4570880
  • 上传时间:2022-12-20
  • 格式:PPTX
  • 页数:29
  • 大小:238.72KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《《软件质量保证与测试》-第六章-检查代码课件.pptx》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    软件质量保证与测试 软件 质量保证 测试 第六 检查 代码 课件
    资源描述:

    1、第六章 检查代码主讲人:主讲人:xxx软件质量保证与测试1谢谢欣赏2019-7-28本章重点静态白盒测试的好处各种类型的静态白盒测试综述编码规范和标准如何从整体审查代码错处2谢谢欣赏2019-7-286.1 静态白盒测试:检查设计和代码静态白盒测试检查代码,在不执行的条件下有条理地仔细审查软件设计、体系结构和代码,从而找出软件缺陷的过程,有时称为结构分析。如果具有编程经验,即使只有一点点,就可以对软件的体系结构和代码进行测试。白盒测试没有黑盒测试通用。如果测试军队、金融、工业自动化、医药类软件,或者有幸在组织严格的开发模式下工作,在代码级别验证产品就是例行公事。如果在测试软件的安全问题,需要白

    2、盒测试。3谢谢欣赏2019-7-286.1 静态白盒测试:检查设计和代码静态测试(人工测试):不运行程序进行测试即检查和审阅。静态黑盒测试检查产品说明书。4谢谢欣赏2019-7-286.1 静态白盒测试:检查设计和代码进行静态白盒测试的好处是尽早发现软件缺陷,以找出动态黑盒测试难以发现或隔离的软件缺陷。进行静态白盒测试的另一个好处是为黑盒测试程序员设计和应用测试用例提供思路。通过听审查评论,可以确定有问题或者容易产生软件缺陷的特征范围。5谢谢欣赏2019-7-286.1 静态白盒测试:检查设计和代码开发小组中,负责静态白盒测试的人员不是固定的。在某些小组里面,程序员是组织和执行审查的人员。软件

    3、测试人员作为独立的观察者。还有一些小组,软件测试人员是任务的执行人,编写代码的程序员和其他同事帮助审查。6谢谢欣赏2019-7-286.1 静态白盒测试:检查设计和代码静态白盒测试方法的正规性、精确性不如基于计算机测试但并不妨碍测试取得成功,可以提高测试的功效错误发现得越早,改正错误成本越低。更容易定位以及发现由该错误引发的其他缺陷(如连锁错误或类似错误)降低调试成本 通常会有效地查找出3070的逻辑设计和编码错误7谢谢欣赏2019-7-286.1 静态白盒测试:检查设计和代码静态白盒测试一般面临的情况是不能善始善终现状:许多小组错误的认为静态白盒测试耗时太多,费用太高,没有产出。人们认为程序

    4、员的任务就是编写代码,而任何破坏代码编写效率的事情都会减缓开发过程。这些想法都不对,在后期发现软件缺陷的费用要昂贵很多。还好这些情况正在改变。8谢谢欣赏2019-7-286.2 正式审查正式审查就是进行静态白盒测试的过程 正式审查的含义很广,从两个程序员之间的简单交谈,到软件设计和代码的详细、严格检查均属于此过程。四个基本要素:确定问题:审查的目的是找出软件的问题。找出错误、遗漏,对事不对人。遵守规则:设立并严格执行 准备:了解自己的责任和义务 编写报告:做出审查结果的书面总结9谢谢欣赏2019-7-286.2 正式审查正式审查要严格按照已经建立起来的过程执行。太随意会让参与者感觉是在浪费时间

    5、。正式审查可以在早期发现一些重大缺陷,一些小的缺陷可能留在后面的测试工作中。10谢谢欣赏2019-7-286.2 正式审查坚持正式审查还有一些间接效果:交流:正式报告中没包含的信息得以交流。例如,黑盒测试程序员洞察问题所在。年轻程序员可以学习新技术。管理员更加理解项目进度。质量:程序员的代码经过逐个功能、逐个代码仔细复查,常常会使程序员变得更加仔细。小组同志化:如果审查正确进行,就会建立软件测试员和程序员对双方技艺的相互尊重,并且更好地了解互相的工作及需求。解决方案:在审查之外讨论解决方案也较有效。11谢谢欣赏2019-7-286.2 正式审查一般至少应有 4 人一人负责协调:分发材料、安排进

    6、程、确保错误随后得到改正被测试程序的编码人员程序的设计人员一名测试专家12谢谢欣赏2019-7-286.2 正式审查实施过程:协调人在代码检查前几天分发程序清单和设计规范 编码人员讲述程序的逻辑结构,其他人员提问题并判断是否存在错误(对照常见的编码错误列表)注意力集中在发现错误而非纠正错误上(非调试)会议结束后,程序员会得到一份已发现错误的清单13谢谢欣赏2019-7-286.2 正式审查其他审查方式:同事审查:伙伴审查(你看看我的,我看看你的)。走查:将代码给其他小组。检查:正式的审查。14谢谢欣赏2019-7-286.3 编码标准和规范有三个重要的原因要坚持标准或者规范:可靠性:更加可靠和

    7、安全 可读性/维护性:代码更容易阅读、理解和维护 移植性:有助于在不同的硬件中运行15谢谢欣赏2019-7-286.3 编码标准和规范标准:必须遵守的规则规范:建议的最佳做法既有一些国际、国内通用的标准及规范,也有一些公司内部的规定。虽然编程是艺术,但是标新立异未必是艺术指望怪异着装体现自己艺术家气质的,往往是不入流的“艺术家”。16谢谢欣赏2019-7-286.3 编码标准和规范如何获取标准:通过公共机构 美国国家标准学会(ANSI)。国际工程学会(IEC)。国际标准化组织(ISO)。信息技术标准国家委员会(NCITS)。美国计算机协会(ACM)。电子电气工程学会(IEEE)。17谢谢欣赏2

    8、019-7-286.4 通用代码审查清单应该审查哪些内容?18谢谢欣赏2019-7-286.4.1 数据引用错误变量使用前是否赋值或初始化?数据类型是否匹配?数组下标的范围和类型:遗漏、越界等通过指针引用的内存单元是否存在(虚调用)?如函数返回局部变量的指针会产生虚调用错误。被引用的变量或内存的属性是否与预期的一致?如A类型的指针或引用指向的是非A类型对象。19谢谢欣赏2019-7-286.4.2 数据声明错误是否所有变量都已声明?默认的属性(默认值)是否正确?变量的初始化是否正确?变量的初始化是否与其存储空间的类型一致?是否每个变量都有正确的长度、类型和存储类别?是否存在相似名称的变量?20

    9、谢谢欣赏2019-7-286.4.3 计算错误是否存在非算术变量之间的运算?是否存在混合模式的运算?(int与float类型)是否存在不同字长变量之间的运算?目标变量长度是否小于所赋值的大小?(精度损失或越界错误)中间结果是否上溢或下溢?是否存在除0错误?操作符的优先顺序是否正确?整数除法是否正确?(精度问题)21谢谢欣赏2019-7-286.4.4 比较错误是否有不同类型数据的比较运算?是否有混合模式或不同长度数据的比较运算?比较运算符是否正确?布尔表达式(与、或、非)是否正确?比较运算符是否与布尔表达式相混合?是否存在浮点数的比较?优先顺序是否正确?22谢谢欣赏2019-7-286.4.5

    10、 控制流程错误是否所有循环都能终止?(循环结束条件是否能满足,递归的终止条件是否能满足。)是否存在由于入口条件不满足而跳过循环体?(do-while循环)是否存在仅差一个的循环错误?如for(int i=0;i=10;i+)程序结构中括号是否匹配、if,else是否匹配、do,while是否匹配、try,catch是否匹配等。23谢谢欣赏2019-7-286.4.6 子程序参数错误形参和实参的数量是否相等?形参的属性是否与实参的属性相匹配?形参的属性是否与实参的顺序相匹配?形参的单位是否和实参匹配?(属逻辑错误)是否改变了某个仅作为输入值的形参?全局变量的定义是否一致?24谢谢欣赏2019-7

    11、-286.4.7 输入/输出错误文件属性是否正确?打开文件的语句是否正确?缓冲区、内存大小是否足够来保留程序将读取的文件?文件在使用前是否打开?文件在使用后是否关闭了?文件结束条件是否本正确处理?是否处理了IO错误?打印或输出的文本信息中是否存在拼写或语法错误?即输出结果正确性。25谢谢欣赏2019-7-286.4.8 其他检查是否存在未引用过的变量?每个变量的属性和赋予的默认值是否一致?编译通过的程序是否存在“警告”或“提示”信息?程序或模块是否对输入的合法性进行了检查?程序是否遗漏了某个功能?26谢谢欣赏2019-7-28本章小结检查代码静态白盒测试被证实是早期发现软件缺陷最有效的方法。这

    12、是一项需要大量准备工作才能有成效的任务。许多研究表明,花费时间在静态白盒测试上面与得到的好处相比是值得的。静态白盒测试正在收到重视,在某些开发过程中,没有静态白盒测试,项目就无法得到可靠的软件。27谢谢欣赏2019-7-28作业请回答以下问题:1.说出白盒测试的几个好处?2.判断题:静态白盒测试可以找出遗漏之处和问题。3.正式审查由哪些关键要素组成?4.除了更正式之外,检验与其他审查类型有什么重大差别?5.如果要求程序员在命名变量时只能使用8个字符并且首字母必须采用大写的形式,那么这是标准还是规范呢?6.你会采用本章的代码审查清单作为项目小组验证代码的标准吗?7.缓冲区溢出错误作为一个常见的安全问题属于哪一级错误?是由什么原因引起的?28谢谢欣赏2019-7-2829谢谢欣赏2019-7-28

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:《软件质量保证与测试》-第六章-检查代码课件.pptx
    链接地址:https://www.163wenku.com/p-4570880.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库