数据流测试PPT课件_第1页
数据流测试PPT课件_第2页
数据流测试PPT课件_第3页
数据流测试PPT课件_第4页
数据流测试PPT课件_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

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

文档简介

.,1,第十章数据流测试,计算机软件测试,.,2,什么是数据流测试?,数据流测试指关注变量接收值的点和使用(或引用)这些值的点的结构性测试形式。,数据流测试指关注可以用作路径测试的“真实性检查”。,数据流测试两种基本方法:一组基本定义和一种统一的测试覆盖指标结构测试;基于“程序片”的概念的测试。,计算机软件测试,.,3,定义/使用测试,定义引用拥有程序图G(P)的程序P和一组程序变量v。P中的所有路径集合是PATHS(P)。,计算机软件测试,.,4,定义节点,定义节点nG(P)是变量vV的定义节点,记做DEF(v,n),当且仅当变量v的值由对应节点n的语句片段处定义。,输入语句、赋值语句、循环控制语句和过程调用,都是定义节点语句的例子。如果执行对应这种语句的节点,那么与该变量关联的存储单元的内容就会改变。,计算机软件测试,.,5,使用节点,定义节点nG(P)是变量vV的使用节点,记做USE(v,n),当且仅当变量v的值在对应节点n的语句片段处使用。,语句、赋值语句、条件语句、循环控制语句和过程调用,都是使用节点语句的例子。如果执行对应这种语句的节点,那么与该变量关联的存储单元的内容会保持不变。,计算机软件测试,.,6,谓词使用和计算使用,定义使用节点USE(v,n)是一个谓词使用(记做P-use),当且仅当语句n是谓词语句;否则,USE(v,n)是计算使用(记做C-use)。,对应于谓词使用的节点永远有外度=2,对应于计算使用的节点永远有外度=1。,计算机软件测试,.,7,定义-使用路径,定义关于变量v的定义一使用路径(记做du-path)是PATHS(P)中的路径,使得对某个vV,存在定义和使用节点DEF(v,m)和USE(v,n),使得m和n是该路径的最初和最终节点。,计算机软件测试,.,8,定义-清除路径,定义关于变量v的定义清除路径(记做dc-path),是具有最初和最终节点DEF(v,m)和USE(v,n)的PATHS(P)中的路径,使得该路径中没有其他节点是v的定义节点。,计算机软件测试,.,9,佣金问题的程序图,8,9,10,11,12,7,13,14,15,16,17,18,19,21,22,23,24,25,20,26,27,28,29,30,34,31,32,33,35,38,36,37,39,40,41,42,.,10,佣金问题变量的定义/使用节点,计算机软件测试,.,11,lockPrice、stockPrice和barrelPrice定义/使用路径,计算机软件测试,.,12,locks、stocks和barrels的定义/使用路径,计算机软件测试,.,13,totalLocks的定义/使用路径,计算机软件测试,.,14,sales的定义/使用路径,计算机软件测试,.,15,commission的定义/使用路径,.,16,全定义准则,定义集合T满足程序P的全定义准则,当且仅当所有变量vV,T包含从v的每个定义节点到v的一个使用的定义清除路径。,T是拥有变量集合V的程序p的程序图G(p)中的一个路径集合。,计算机软件测试,.,17,全使用准则,定义集合T满足程序p的全使用准则,当且仅当所有变量vV,T包含从v的每个定义节点到v的所有使用,以及到所有USE(v,n)后续节点的定义清除路径。,计算机软件测试,.,18,全谓词使用部分计算使用准则,定义集合T满足程序p的全谓词使用部分计算使用准则,当且仅当所有变量vV,T包含从v的每个定义节点到v的所有谓词使用的定义清除路径,并且如X-v的一个定义没有谓词使用,则定义清除路径导致至少一个计算使用。,计算机软件测试,.,19,全计算使用部分谓词使用准则,定义集合T满足程序P的全计算使用部分谓词使用准则,当且仅当所有变量vv,T包含从v的每个定义节点到v的所有计算使用的定义清除路径,并且如果v的一个定义没有计算使用,则定义清除路径导致至少一个谓词使用。,计算机软件测试,.,20,全定义-使用路径准则,定义集合T满足程序p的全定义一使用路径准则,当且仅当所有变量vV,T包含从v的每个定义节点到v的所有使用,以及到所有USE(v,n)后续节点的定义清除路径,并且这些路径要么有一次的环经过,要么没有环路。,计算机软件测试,.,21,数据流覆盖指标Rapps/Weyuker层次结构,全路径,全定义-使用路径,全使用,全计算使用/部分谓词使用,全谓词使用/部分计算使用,全定义,全谓词使用,全边,全节点,计算机软件测试,.,22,基于程序片的测试,定义给定一个程序P和P中的一个变量集合V,变量集合V在语句n上的一个片,记做S(V,n),是P中对V中的变量值作出贡献的所有语句集合。,定义给定一个程序P和一个给出语句及语句片段编号的程序图G(P),以及P中的一个变量集合V,变量集合V在语句片段n上的一个片,记做S(V,n),是P中在n以前对V中的变量值作出贡献的所有语句片段编号的集合。,计算机软件测试,.,23,使用节点和定义节点,USE关系适合五种形式的使用:谓词使用用在谓词(判断)中。计算使用用在计算中。输出使用用于输出。定位使用用于定位(指针、下标)。迭代使用迭代(内部计数器、循环指示)。,标识两种定义节点:输入定义通过输入定义。赋值定义通过赋值定义。,计算机软件测试,.,24,先假设片S(V,n)是一个变量上的片,即集合V由单一变量v组成。如果语句片断n是v的一个定义节点,则n包含在该片中。如果语句片断n是v的使用节点,则n不包含在该片中。其它变量的谓词使用和计算使用(不是片集合V中的v),要包含其执行会影响变量v取值的扩展。作为一种指导方针,如果不管是否包含语句片断,v的值都保持不变,那么排除该语句片断一般把输出使用节点、定位使用节点和迭代使用节点,不包含在片中。,计算机软件测试,.,25,变量locks上的片,S1:S(locks,13)=13)S2:S(locks,14)=13,19,20S3:S(locks,16)=13,14,19,20)S4:S(locks,19)=19,计算机软件测试,.,26,变量stocks和barrels上的片,S5:S(stocks,15)=13,14,15,19,20S6:S(stocks,17)=13,14,15,19,20S7:S(barrels,15)=13,14,15,19,20S8:S(barrels,18)=13,14,15,19,20,计算机软件测试,.,27,totalLocks、totalStocks和totalBarrels的片,S9:S(totalLocks,10)=10S10:S(totalLocks,16)=10,13,14,16,19,20S11:S(totalLocks,21)=10,13,14,16,19,20S12:S(totalStocks,11)=11S13:S(totalStocks,17)=11,13,14,15,17,19,20S14:S(totalStocks,22)=11,13,14,15,17,19,20S15:S(totalBarrels,12)=12S16:S(totalBarrels,18)=12,13,14,15,18,19,20S17:S(totalBarrels,23)=12,13,14,15,18,19,20,计算机软件测试,.,28,赋值定义,S18:S(lockPrice,24)=7S19:S(stockPrice,25)=8S20:S(barrelPrice,26)=9S21:S(lockSales,24)=7,10,13,14,16,19,20,24S22:S(stockSales,25)=8,11,13,14,15,17,19,20,25S23:S(barrelSales,26)=9,12,13,14,15,18,19,20,26,计算机软件测试,.,29,Sales上的片,S24:S(sales,27)=7,8,9,10,11,12,13,14,15,16,17,18,19,20,24,25,26,27S25:S(sales,28)=7,8,9,10,11,12,13,14,15,16,17,18,19,20,24,25,26,27S26:S(sales,29)=7,8,9,10,11,12,13,14,15,16,17,18,19,20,24,25,26,27S27:S(sales,33)=7,8,9,10,11,12,13,14,15,16,17,18,19,20,24,25,26,27S28:S(sales,34)=7,8,9,10,11,12,13,14,15,16,17,18,19,20,24,25,26,27S29:S(sales,37)=7,8,9,10,11,12,13,14,15,16,17,18,19,20,24,25,26,27S30:S(sales,38)=7,8,9,10,11,12,13,14,15,16,17,18,19,20,24,25,26,27,S24=27S21S22S23,计算机软件测试,.,30,Commission上的片,S31:S(commission,31)=31S32:S(commission,32)=31,32S33:S(commission,33)=7,8,9,10,11,12,13,14,15,16,17,18,19,20,24,25,26,27,29,30,31,32,33S34:S(commission,36)=36S35:S(commission,37)=7,8,9,10,11,12,13,14,15,16,17,18,19,20,24,25,26,27,29,34,35,36,37S36:S(commission,38)=7,8,9,10,11,12,13,14,15,16,17,18,19,20,24,25,26,27,29,34,38S37:S(commission,41)=7,8,9,10,11,12,13,14,15,16,17,18,19,20,24,25,26,27,29,30,31,32,33,34,35,36,37,38,计算机软件测试,.,31,commission上的片格,计算机软件测试,.,32,sales和commission上的格,计算机软件测试,.,33,风格与技术,1永远不要在不出现在语句片段n里的V的变量v上建立片S(V,n)。2在一个变量上建立片。片S(V,n)中的集合V可以包含多个变量,有时这样的片也是有用的。3对所有赋值定

温馨提示

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

评论

0/150

提交评论