您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > 静态测试和动态测试活动2
静态测试方法静态测试包括代码检查、静态结构分析、代码质量度量等。它可以由人工进行,充分发挥人的逻辑思维优势,也可以借助软件工具自动进行。1、代码检查:代码检查包括代码走查、桌面检查、代码审查等,主要检查代码和设计的一致性,代码对标准的遵循、可读性,代码逻辑表达的正确性,代码结构的合理性等方面;可以发现违背程序编写标准的问题,包括变量检查、命名和类型审查、程序逻辑审查、程序语法检查和程序结构检查等内容。在实际使用过程中,代码检查不动态测试更有效率,能快速找到缺陷,发现30%-70%的逻辑设计和编码缺陷;代码检查看到的是问题本身而非征兆。但是代码检查非常耗费时间,而且代码检查需要知识和经验的积累。代码检查应在编译和动态测试之前进行,在检查前,应准备好需求描述文档、程序设计文档、程序的源代码清单、嗲吗编码标准和代码缺陷检查表等。2、静态结构分析静态结构分析主要是以图形的方式表现程序内部结构,例如函数调用关系图、函数内部控制流图。其中函数调用关系图以直观地图形方式描述一个应用程序中各个函数的调用和被调用关系;控制流图显示一个函数的逻辑结构,它由许多节点组成,一个节点代表一条语句或数条语句,连接节点的叫边,边表示节点间的控制流向。检查项:•代码风格和规则审核•程序设计和结构的审核•业务逻辑的审核走查、审查与技术复用手册(1)静态测试要点:1)同一程序内的代码书写风格是否为同一风格2)代码布局是否合理、美观3)程序中函数、子程序块分界是否明显4)注释是否符合既定格式5)注释是否正确反映代码的功能6)变量定义是否正确(长度、类型、存储类型)7)是否引用了未初始化变量8)数组和字符串的下标是否为整数9)数组和字符串的的下标是否在范围内(不“越界”)10)进行数组的检索及其他操作中,是否会出现“漏掉一个这种情况”11)是否在应该使用常量的地方使用了变量(例如:数组范围检查)12)是否为变量赋予了不同类型的值13)12)的情况下,赋值是否符合数据类型的转换规则14)变量的命名是否相似15)是否尊在声明过,但从未引用或者只引用过一次的变量16)在特定的模块中所有的变量是否都显示声明过17)在非16)的情况下,是否可以理解为该变量具有更高的共享级别18)是否为引用的指针分配内存19)数据结构在函数和子程序中的引用是否明确定义了其结构20)计算中是否使用了不同数据类型的变量21)计算中是否使用了相同的数据类型但长度不同的变量22)赋值的目的变量是否小于赋值表达式的值23)数值计算是否会出现溢出(向上、向下)的情况24)除数是否可能为零25)某些计算是否丢失计算精度26)变量的值是否超过有意义的值27)计算的求职顺序是否容易让人感到混乱28)比较是正确的29)是否存在分数和浮点数的比较30)如果29),精度问题是否会影响比较31)每一个逻辑表达式是否都得到了正确的表达32)逻辑表达式的操作数是否为逻辑值33)程序中的begin.....end和do....while等语句中,end是否对应34)程序、模块、子程序和循环是否能够终止35)是否存在永不执行的循环36)是否存在多循环一次或循环一次的情况37)循环变量是否存在在循环内被错误的修改38)多分支选择中,索引变量是否能够超过可能的分支数39)如果38),该情况是否能够得到正确处理40)子程序接受的函数类型、大小、次序是否和调用模块相匹配41)全局变量定义和用法在各个模块中是否一致42)是否修改了只作为输入用的参数43)常量是否被作为形式化参数进行传递(2)动态测试要点1)测试数据是否具有一定的代表性2)测试数据是否包含测试所用的各个等价类(边界条件、次边界条件、空白、无效)3)是否可能从客户那边得到测试数据4)非3)的情况下,所用的测试数据是否具有实际的意义5)每一组测试数据的测试结果是否与预期结果一致6)文件的属性是否正确7)打开文件语句是否正确8)输入输出语句是否与格式说明书所记述的一致9)缓冲区大小与记录长度是否匹配10)使用文件前是否已经打开了文件11)文件结束条件是否存在12)产生输入输出错误时,系统是否进行检测并处理13)输出信息中是否存在文字书写错误和语法错误14)空间尺寸是否大小适宜15)空间颜色是否符合规约16)空间布局是否合理、美观17)控件TAB顺序是否从左到右,从上到下18)数字输入框是否接受数字输入19)在18)的情况下,数字是否按既定格式显示20)数字输入框是否拒绝字符创和“非法”数字的输入21)组合框是否能够进行下拉选择22)组合框是否能够进行下拉多项选择23)对于可添加数据组合框,添加数据后是否能够得到正确显示和进行选择24)列表框是否能够进行选择25)多项列表框是否能够进行多数据项选择26)日期输入框是否接受正确的日期输入27)日期输入框是否拒绝错误的日期输入28)日期输入框在日期输入后是否按既定的日期格式显示日期29)单选组内是否有且只有一个单选按钮可选30)如果单选组内无单选按钮可选,这种情况是否允许存在31)如果复选框内无复选框可选,这种情况是否允许存在32)复选框组内是否允许多个复选框(包括全部可选)可选33)文本框及某些控件拒绝输入和选择时显示区域是否变灰或按既定规约处理34)密码输入框是否按掩码的方式显示35)Cancel之类的按钮按下后,控件中的数据是否哦清空复原或按既定规约处理36)Submit之类的按钮按下后,数据是否得到提交或按既定规约处理37)异常信息表述是否正确38)软件是否按预期方式处理错误39)文件或外设不存在的情况下是否存在相应的错误处理40)软件是否严格的遵循外设的读写格式41)画面文字(全、半角、格式、拼写)是否正确42)产生的文件和数据表的格式是否正确43)产生的文件或数据表的计算结果是否正确44)打印的报表是否符合既定的格式45)错误日志的表述是否正确46)错误日志的格式是否正确软件测试是比较辛苦的事情,但又不是没有章法的,你一旦掌握了一定的技巧之后,将对你有事半功倍的效果。A.边界测试:测试用户输入框中的数值的最大数和最小数,以及为空时的情况B.非法测试,例如在输入数字的地方输入字母C.跟踪测试,跟踪一条数据的流程,保证数据的正确性D.在开始测试时应保证数据的正确性,然后再从系统中找出各种BUGE.接口测试,程序往往在接口的地方很容易发生错误,要在此模块测试勿掉以轻心F.代码重用测试,在开发过程中有些模块功能几乎相同,程序员在重用代码时可能忘记在原有代码上修改或修改不全面,而造成错误。G.突发事件测试,服务器上可能发生意外情况的测试H.外界环境测试,有些系统在开发时依赖于另一个系统,当另一个系统发生错误时,这个系统所受到影响的情况。I.缺陷验证,在程序员刚修复Bug之后的地方,一定要再次验证、测试,往往程序员只修改报告出来的缺陷而不去考虑别的功能在修改时可能最重新造成错误。J.做好BUG管理工作,认真做好测试记录,在做完一天的测试记录之后,第二天再根据的测试记录重复测试你会发现有未修正的错误。K.错字、错词测试,如果在系统中有用此不当的地方,我想这事不应该的L.系统兼容测试,例如有些程序在IE6能运行正常,单IE5下缺不能运行。有些程序在WIN200下能运行,而到WIN98却不能运行。像有些很特别的用户去使用系统,你很有可能发现BUG。M.用户的易用性测试,往往用户的需求是不断变化的,而其中一部分变化的原因,是由于用户操作上不方便引起的。N.B.C.D.E.F.G.H.I.J.K.3、挑选合适的复审员复审活动人数控制在3-7个人,每次复审活动不要超过2小时,否则应该功能分解或者形式分解。准备充分的复审一小时内完成疑问:每个公司的复审员有谁来挑的?4、管理部门的参与任何对复审由只关注技术转变为与人事产生关系的情况都应该避免5、复审活动过程中的注意事项静态方法是指不运行被测程序本身,仅通过分析或检查源程序的语法、结构、过程、接口等来检查程序的正确性。对需求规格说明书、软件设计说明书、源程序做结构分析、流程图分析、符号执行来找错。静态方法是通过静态特性的分析,找出欠缺货可疑之处,例如不匹配的参数、不适当的循环嵌套和分支嵌套、不允许的递归、未使用过的变量、空指针的引用和可疑的计算等。静态测试结果可用于进一步的查错,并未测试用例的选取提供指导。动态测试方法是指通过运行被测程序,检查运行结果与预期结果的差异,并分析运行效率和健壮性等性能,这种方法由三部分组成:构造测试实例、执行程序、分析程序的输出结果。二、回答问题1.试叙述软件测试主要流程?开始①测试项目确认②测试计划③测试执行④问题修正与跟踪⑤测试关闭结束(1)测试计划的流程:开始①确定测试环境②确定测试策略③编制测试计划④测试计划评审与审批⑤编写测试用例⑥测试用例评审与审批结束(2)测试执行的流程:开始①获取可测试版本②获取安装及功能手册③搭建测试环境④测试数据,测试用例就绪⑤按测试用例输入⑥检查输出⑦记录测试用例执行结果⑧编制测试报告⑨测试报告通知相关部门评审结束2.简述你对测试工作的人事过程,在以后的工作的一些建议2.软件测试分为()和()两种3.
本文标题:静态测试和动态测试活动2
链接地址:https://www.777doc.com/doc-1959957 .html