软件技术知识基础.ppt

  1. 1、本文档共315页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件技术知识基础.ppt

  进行测试时,通常又把测试数据和预期的输出结果称为测试用例。其中最困难的问题是设计测试所使用的输入数据。不同的测试数据发现程序错误的能力差别很大,为了提高测试效率,降低测试成本,应该选用高效的测试数据。因为不可能进行穷尽的测试,所以选用少量“最有效的”测试数据,做到尽可能完备的测试就更重要了。设计测试方案的基本目标是,确定一组最有可能发现某个错误或某类错误的测试数据。   通过测试发现的软件错误大致有:功能错误(需求分析错误);软件结构错误;数据错误;编码错误;软件集成错误;测试定义与测试执行错误。   5) 测试技术   下面具体介绍动态测试所采用的白盒技术和黑盒技术。   (1) 白盒技术。白盒技术用于测试模块内部的逻辑和数据结构,主要按照模块内部的分支结构和循环结构设计测试用例。   ① 逻辑覆盖。逻辑覆盖用于测试分支结构。在测试时,需要设计覆盖程度较高或覆盖最有代表性的路径的测试用例。表1.7给出了六种常用的逻辑覆盖标准,其中语句覆盖发现错误的能力最弱,路径覆盖发现错误的能力最强。在实际的逻辑覆盖测试中,一般以条件组合覆盖为主设计测试用例,然后补充部分用例,以达到路径覆盖的标准。   【例1.3】 根据六种不同的逻辑覆盖标准,为图1.28中的分支结构设计测试用例。 图1.28 一个分支结构的流程图   ● 语句覆盖。只需要一组测试用例:A=2,B=0,X=4,通过路径12345即可达到语句覆盖。   语句覆盖是最弱的逻辑覆盖,如:and 写成or,或者X1写成X1,就检查不出来了。   ● 判定覆盖。设计两组测试用例:   A=3,B=0,X=1,使(A1)and(B=0)为真,(A=2) or (X1)为假,通过路径1235   A=2,B=1,X=2,使(A1)and(B=0)为假,(A=2) or (X1)为真,通过路径1345   两组测试用例可覆盖所有判定的真、假分支,但也只是覆盖了全部路径的一半。   ● 条件覆盖。两个判定表达式中有4个条件:A1,B=0, A=2, X1选择两组测试用例:  A=2,B=0,X=3 使A1,B=0,A=2,X1为真,通过路径12345   A=1,B=1,X=1 使A1,B=0,A=2,X1为假,通过路径135 既达到了条件覆盖,又达到了判定覆盖。在这种情况下,条件覆盖强于判定覆盖。但也有例外情况,考虑另外两组测试用例:  A=1,B=0,X=3 使B=0,X1为真,A1,A=2为假,通过路径1345  A=2,B=1,X=1 使B=0,X1为假,A1,A=2为真,通过路径1345 这两组测试用例只通过了路径1345,不满足判定覆盖。所以,满足条件覆盖时不一定满足判定覆盖。   ● 判定/条件覆盖。选取两组测试用例,使两个判定表达式的值分别取“真”、“假”至少一次,同时使判定表达式中的4个条件的值分别取“真”、“假”至少一次。   A=2, B=0, X=4 使两个判定表达式的值为“真”,4个条件的值为“真”   A=1, B=1, X=1 使两个判定表达式的值为“假”,4个条件的值为“假” 从表面上看,判定/条件覆盖测试了所有条件的取值,但实际上条件组合中的某些条件会抑制其他条件。例如,在含有“与”运算的判定表达式中,一个条件的值为“假”,即使这个表达式中的其他条件写错,也是测试不出来的;在含有“或”运算的判定表达式中,一个条件的值为“真”,而其他条件有错,同样也不能发现。   ● 条件组合覆盖。两个判定表达式中有4个条件,可以构成以下8种不同的组合:   A1 B=0;A1 B≠0; A≯1 B=0;A≯1 B≠0;   A=2 X1;A=2 X≯1;A≠2 X1;?A≠2 X≯1;   设计4组测试用例,使所有8种条件取值组合都至少出现一次:   A=2, B=0, X=4 覆盖条件组合①和⑤,通过路径12345   A=2, B=1, X=1 覆盖条件组合②和⑥,通过路径1345   A=1, B=0, X=2 覆盖条件组合③和⑦,通过路径1345   A=1, B=1, X=1 覆盖条件组合④和⑧,通过路径135 显然,满足条件组合覆盖的测试用例一定能够满足“判定覆盖”、“条件覆盖”和“判定/条件覆盖”。但是也应当看到,为条件组合设计的测试用例有可能没有覆盖被测程序段的全部路径,上述4组测试用例就没有覆盖路径1235。   ● 路径覆盖。下面的测试用例可以覆盖被测程序段中的所有路径:   A=2, B=0, X=4 通过路径12345,覆盖条件组合①和⑤   A=2, B=1, X=1 通过路径1345,覆盖条件组合②和⑥   A=1, B=1, X=1 通过路径135,覆盖

文档评论(0)

yuzongxu123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档