白盒测试——基本路径测试

基本路径测试是将程序流程图转化为控制流图,通过分析控制结构的环路复杂性,进而找出路径的基本独立集,最终导出测试用例

基本独立集:

从基本独立集导出的测试用例保证对程序中的每一条语句至少执行一次。

控制流图:

定义:

百度百科:    

    是一个过程或程序的抽象表现,是用在编译器中的一个抽象数据结构,由编译器在内部维护,代表了一个程序执行过程中会遍历到的所有路径。它用图的形式表示一个过程内所有基本块执行的可能流向, 也能反映一个过程的实时执行过程。

个人理解:

  控制流图是顶点和有向边的集合。

  顶点分为:

        1. 初始节点Vb和结束节点Ve。初始节点入度为零(即没有进入初始节点的边),结束节点出    度为零(即没有出去的边)。

        2. 判断节点D。(即出度为二,例如if语句,while语句等)、

        3. 顺序节点S。(表示一块连续的语句群)

几种结构:

程序流程图如何转化为控制流图:

图中R1 R2 R3 R4 是将整个平面分成四个互不重叠的封闭区域。

基本路径:

基本路径就是从Vb到v1,v2......Ve的一条路径。(不包含重复的任意一段路)

例如:

P1:vb,v1,v2,v1,v2,ve   不是一条基本路径,因为v1->v2走了两边,重复。

P2:vb,v1,v2,v3,v1,v3,ve   是一条基本路径,虽然多次出现v1,v3,但是并未重复。

环路复杂性:

    用于基本路径测试,计算所得的值是程序基本集的独立路径数量,这个数量是确保程序中所有语句至少执行一次而必须进行测试数量的上界

计算方法:

1. 控制流图中的区域数量,例如上面图二被分为四个区域,因此复杂性为4。

2. 环路复杂性=E-N+2。E为控制流图中边的数量,N为节点数量。

3. 判定节点的数量加一。

例如:

导出测试用例:

从初始节点开始,沿着控制流图向结束节点前进。按照从简单到复杂依次找出所有路径。

图矩阵法:

        导出流图或者决定基本路径的过程都需要机械化或者自动化。为了开发这种软件,需要用到称为图矩阵的数据结构。

图矩阵:

        是一个正方形矩阵,它的大小(即行或列数)等于流图节点数。

        每行和每列都对应于标识的节点,矩阵项对应节点间的连接。

                ​​​​​​​

 

  • 7
    点赞
  • 54
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值