第四周 项目中的白盒测试

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第四周 项目中的白盒测试相关的知识,希望对你有一定的参考价值。

关于白盒测试的知识点,结合你的项目实践,就可以得出如下题目:

白盒测试有几种,请结合你的代码片段,一一举例说明,并给出测试用例。

白盒测试,书上叫做白箱测试(书上256页):指的是再设计的过程中,设计者可以"看到"软件系统的内部结构,并使用软件的内部结构和知识来选择测试数据级具体的测试方法。"白箱"并不是一个精确的说法,因为把箱子涂成白色,同样也看不见箱子里的东西,有人建议使用“玻璃箱”来表示。

详细介绍见:http://baike.baidu.com/link?url=TvrE2hqYsmfFr-OtQeK-STmAAhaQvCC4CeulS1PpJd0YCGbgUFGbaqTouW1fZoxa_yNdEtodddxPeQLrw27l1a

自己的理解:

白盒测试,也称为结构化测试、基于代码的测试,是一种测试用例设计方法,它从程序的控制结构导出测试用例。用白盒测试产生的测试用例能够: 
1)保证一个模块中的所有独立路径至少被使用一次;
2)对所有逻辑值均需测试true和false;
3)在上下边界及可操作范围内运行所有循环;
4)检查内部数据结构以确保其有效性;

白盒测试的集几种覆盖:
  1. 语句覆盖是指选择足够的测试用例,使得运行这些测试用例时,被测程序的每一个语句至少执行一次,其覆盖标准无法发现判定中逻辑运算的错误;
  2. 判定覆盖是指选择足够的测试用例,使得运行这些测试用例时,每个判定的所有可能结果至少出现一次,但若程序中的判定是有几个条件联合构成时,它未必能发现每个条件的错误;
  3. 条件覆盖是指选择足够的测试用例,使得运行这些测试用例时,判定中每个条件的所有可能结果至少出现一次,但未必能覆盖全部分支;
  4. 判定或条件覆盖是使判定中每个条件的所有可能结果至少出现一次,并且每个判定本身的所有可能结果也至少出现一次;
  5. 修正条件判定覆盖满足条件与判定覆盖,并且需要确定每个条件能够影响到包含的判定的结果。
  6. 条件组合覆盖是使每个判定中条件结果的所有可能组合至少出现一次,因此判定本身的所有可能解说也至少出现一次,同时也是每个条件的所有可能结果至少出现一次;
  7. 路径覆盖是每条可能执行到的路径至少执行一次;
 

白盒测试的应用:用户登陆校验系统。

  白盒测试法的覆盖标准有逻辑覆盖、循环覆盖和基本路径测试。

  逻辑覆盖:

  Test1:用户名:数字,密码:数字

  Test2:用户名:数字,密码:普通字符

  Test3:用户名:数字,密码:特殊字符

  Test4:用户名:普通字符,密码:数字

  Test5:用户名:普通字符,密码:普通字符

  Test6:用户名:普通字符,密码:特殊字符

  Test7:用户名:特殊字符,密码:数字

  Test8:用户名:特殊字符,密码:普通字符

  Test9:用户名:特殊字符,密码:特殊字符

 
用户名 密码 覆盖的测试用例 结果
455354 453 Test1 登陆成功
54254 fsahdfh Test2 登陆成功
52242 %@#¥%#@ Test3 登陆成功
dfsgd 2121 Test4 登陆成功
dfhf gfdhg Test5 登陆成功
fdhg #¥%#…… Test6 登陆成功
¥#@% 545 Test7 登陆成功
!@¥#!@ fdghgf Test8 登陆成功
%……&……8* %¥……&%& Test9 登陆成功
      登陆成功

 

  首先设计测试用例:

      语句覆盖:

public boolean login()
{
  if(userName==null||passowrd==null)
  {
    msg="用户名或密码不能为空";
    return false;
  }
  else//
  {
    return true;
  }
}

路径覆盖

   技术分享

 

 

 

 

 

 

 

 

 

 

 

 

 

以上是关于第四周 项目中的白盒测试的主要内容,如果未能解决你的问题,请参考以下文章

第十四周总结

后台服务项目的白盒测试之旅

后台服务项目的白盒测试之旅

第十四周总结

软件测试中的白盒测试分析

白盒测试中的六种覆盖方法