2023年白盒测试策略软件测试面试必备_第1页
2023年白盒测试策略软件测试面试必备_第2页
2023年白盒测试策略软件测试面试必备_第3页
2023年白盒测试策略软件测试面试必备_第4页
2023年白盒测试策略软件测试面试必备_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

_软件测试面试必备白盒测试策略ﻬ目录TOC\o"1-3"\h\z\uHYPERLINK\l"_Toc"1ﻩ白盒测试ﻩPAGEREF_Toc\h3HYPERLINK\l"_Toc"1.1 概念 PAGEREF_Toc\h3HYPERLINK\l"_Toc"1.2 描述ﻩPAGEREF_Toc\h3HYPERLINK\l"_Toc"1.3ﻩ目的 PAGEREF_Toc\h3HYPERLINK\l"_Toc"2 白盒测试策略ﻩPAGEREF_Toc\h3HYPERLINK2.1ﻩ桌前检查ﻩPAGEREF_Toc\h3HYPERLINK\l"_Toc"2.2ﻩ单元测试ﻩPAGEREF_Toc\h3HYPERLINK\l"_Toc"2.3ﻩ代码评审 PAGEREF_Toc\h4HYPERLINK\l"_Toc"2.4 同行评审 PAGEREF_Toc\h4HYPERLINK\l"_Toc"2.5ﻩ代码走查ﻩPAGEREF_Toc\h5HYPERLINK\l"_Toc"2.6ﻩ静态分析ﻩPAGEREF_Toc\h5ﻬ白盒测试概念白盒测试又称结构测试,透明盒测试、逻辑驱动测试或基于代码的测试。描述白盒测试是测试被测单元内部如何工作的一种方法。目的通过检查软件内部的逻辑结构,对软件中的逻辑途径进行覆盖测试;在程序不同地方设立检查点,检查程序的状态,以拟定实际运营状态与预期状态是否一致。它允许测试人员对程序内部逻辑结构及有关信息来设计和选择测试用例,对程序的逻辑进行测试,提高代码质量。白盒测试策略在软件过程的不同阶段,研发组都也许需要进行白盒测试。根据团队实际情况的不同,有选择的使用下面的策略:桌前检查简述:程序员实现制定功能后,进行单元测试之前,对源代码进行的初步检查。重点:编码规范、语句的使用等是否符合编码规范,并根据《编码规范》调整自己的代码以符合编码规范的规定。参与人员:开发人员。单元测试简述:又称模块测试。传统结构化编程中,以一个函数、过程为一个单元;在面向对象的编程中一般把类作为单元进行测试。重点:采用白盒测试和黑盒测试方法相结合。参与人员:专门的白盒测试人员。代码评审简述:在编码初期或编写过程中采用一种有同行参与的评审活动。重点:通过组织或其他程序员共同查看程序,可以找出问题,使大家的代码风格一致或遵守编码规范。方法:通过大家共同阅读代码或由程序编写者讲解代码,其他同行边听边分析问题的方法。参与人员:全体开发小组。同行评审简述:引用CMM(能力成熟度模型)中的术语,如用在评审源代码上,就使代码评审;在同行评审中,由软件工作产品创建者的同行们检查该工作的产品,辨认产品的缺陷,改善产品的局限性。目的:检查工作产品是否对的的满足了以往的工作产品中建立的规范,如需求或设计文档;辨认工作产品相对于标准的偏差,涉及也许影响软件可维护性的问题;向创建者提出改善建议;促进参与者之间的技术交流和学习。参与人员:程序员、设计师、单元测试工程师、维护者、需求分析师、编码标准专家(此为CMM标准中提出的参与角色,可根据实际情况调整,至少需要开发人员、测试人员、设计师参与)。代码走查简述:由测试小组组织或者专门的代码走查小组进行代码走查,这时需要开发人员提交有关的资料文档和源代码给走查人员,并进行必要的讲解。代码走查往往根据《代码检查单》来进行,代码检查单经常是根据《编码规范》总结出来的一些条目,目的是检查代码是否按照《编码规范》来编写的。当然,代码走查的最终目的还是为了发现代码中潜在的错误和缺陷。重点:把材料(《需求描述文档》、《程序设计文档》、《程序的源代码清单》、《代码编码标准》、《代码缺陷检查表》等)发给走查小组每个成员,让他们认真研究程序;开会,让与会者“充当”计算机,让测试用例沿程序的逻辑运营一遍,随时记录程序的踪迹,供分析和讨论,发现更多的问题。参与人员:测试人员(一般不让代码的创建者参与)。代码检查速度建议:汇编代码与C代码150行/小时,C++/Java200-300行/小时。静态分析简述:由测试小组来进行,静态分析通常需要辅助工具支持,通过提取代码信息,进行记录,根据记录结果对源代码进行质量评估。代码规则检查也是静态分析的一个方面。人员:测试小组。工具介绍:PC-Lint:支持C/C++语言;优点:工具简朴实用,可以选择编码规范标准,数据检查技术;缺陷:不是图形用户界面,危险的用法,C/C++的兼容性问题。CodeWizard:支持C/C++语言;优点:图形用户界面,方便规则定制;缺陷:分析速度慢。Logiscope:支持C/C++语言;优点:图形界面,可以生成代码质量报告;缺陷:规则不是特别多;Logiscope是面向源代码进行工作的,贯穿于软件开发、代码评审、单元测试、集成测试、系统测试、以及软件维护阶段。也是中小型公司常用的代码静态分析工具。Testbed:支持C语言;优点:规则特别多;缺陷:规则定制比较麻烦,时常也许误报,需要人工判断。QAC/QAC++:版本决定支持那种语言,一般以C/C++为主;优点:规则检查自动化,规则多,速度快,可以定制规则。C++Test:支持C++;优点:C++Test重要是对指针的保护、越界,数组的越界,变量的越界等很有用,对于数学运算等函数,可以明确知道返回值的,可以设立预期的返回值,来检查算法是否对的。C++Test测试用例可以控制7种类型的变量条件(取决于被测函数用了多少):ﻫ.参数(Arguments):函数的入口参数。

.参数出口条件(ArgumentsPost):函数执行完毕时入口参数的状态。

.返回值(Return):函数的返回值。ﻫ.对象前置条件(PreConditions>This):测试开始前对象的条件。

.对象后置条件(PostConditions>This):测试执行后对象的条件。

.前置条件(PreConditions>Externals):测试开始前全局变量的条件。

.后置条件(PostConditions>Externals):测试执行后全局变量的条件。缺陷:速度慢,耗系统资源,测试执行效率低。ﻩ关于java代码的质量相关,和静态工具使用,请先参照: ﻩ《Java代码质量专题》; 《追求代码质量监视圈复杂度》; ﻩ《追求代码质量软件架构的代码质量》; 《追求代码质量用代码度量进行重构》; ﻩ《初用FindBugs-耐心愉悦-CSDNBlog》; ﻩ《FindBugs,第1部分提高代码质量》。这里面FindBugs是java静态分析工具。

桌面检查、代码走查、代码审查同时属于代码检查的方式。代码检查是发现错误缺陷最有效的手

温馨提示

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

评论

0/150

提交评论