- 1、本文档共26页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
软件测试技术--10定义-使用测试
数据流测试这是一种结构化的测试形式,白盒测试技术主要关注程序的变量和路径。静态分析允许我们不运行程序而检查(测试或发现错误)代码,我们能像如下那样检查变量:1.变量被定义,但是从来没有使用。2.所使用的变量没有被定义。3.变量在使用之前被定义两次。
定义/使用测试定义节点n∈G(P)是变量v∈V的定义节点,记做DEF(v,n),当且仅当变量v的值由对应节点n的语句片段处定义。
定义/使用测试定义节点n∈G(P)是变量v∈V的使用节点,记做USE(v,n),当且仅当变量v的值由对应节点n的语句片段处使用。
定义/使用测试定义使用节点USE(v,n)是一个谓词使用(记做P-use),当且仅当语句n是判断语句;否则,USE(v.n)是计算使用(记做C-use)。
定义/使用测试定义关于变量v的定义-使用路径(记做du-path)是PATHS(P)中的路径,使得对某个v∈V,存在定义和使用节点DEF(v,m)和USE(v,n),使得m和n是该路径的最初和最终节点。
定义/使用测试定义关于变量v的定义清洁路径(记做dc-path),是具有最初和最终节点DEF(v,m)和USE(v,n)的PATHS(P)中的路径,使得该路径中没有其他节点是v的定义节点。
例子Pseudo-codeSampleinta,binput(a,b)if(ab)thenOutput(a,“abiggerthanb”)elseOutput(b,“bisequalorgreaterthana”)end34567Thefollowingareexamplesofthedefinitions:DEF(a,3)–node3isadefiningnodeofvariable“a”---avalueisassignedto“a”USE(a,4)–node4isausagenodeofvariable“a”USE(a,5)–node5isausagenodeofvariable“a”USE(a,4)isaP-usenodewhileUSE(a,5)isC-usenodePaththatbeginswithDEF(a,3)andendswithUSE(a,4)isadefinition-usepathofaPaththatbeginswithDEF(a,3)andendswithUSE(a,5)isadefinition-usepathofaPaththatbeginswithDEF(a,3)andendswithUSE(a,5)isadefinition-clearpathofaPaththatbeginswithDEF(b,3)andendswithUSE(b.6)isadefinition-usepathofb
“CommissionProgram”关于变量的部分例子otherassignments13.Input(locks)14.WhileNOT(locksequals-1)15.Input(stocks,barrels)16.Totallocks=Totallocks+locks17.Totalstocks=Totalstocks+stocks18.Totalbarrels=Totalbarrels+barrels19.Input(locks)20.EndWhilefalsetrue21.Output(“Lockssold“,Totallocks)continuingotherstatementswehaveDEF(locks,13)andDEF(locks,19)wehaveUSE(locks,14)andUSE(locks,16)Wecanemploythedefine/usemethodologyandgetthefollowingpaths:-path1=DEF(locks,13)toUSE(locks,14)-path2=DEF(locks,13)toUSE(locks,16)-path3=DEF(locks,19)toUSE(lo
文档评论(0)