单元测试覆盖率怎么算?

玩技站长
玩技站长
玩技站长
管理员, Keymaster
10735
文章
668
评论
测试分享评论115字数 232阅读0分46秒阅读模式
摘要一、语句覆盖率;二、分支覆盖率;三、条件覆盖率;四、路径覆盖率

一、语句覆盖率

计算方式:被测语句/全部语句。文章源自玩技e族-https://www.playezu.com/204171.html

全部语句要求:非分支,非判断。文章源自玩技e族-https://www.playezu.com/204171.html

  num = int(input("请输入数字:")) #①
  if num>0:
   num+=1 #②
  else:
   num-=1 #③

单元测试覆盖率怎么算?插图
文章源自玩技e族-https://www.playezu.com/204171.html

二、分支覆盖率文章源自玩技e族-https://www.playezu.com/204171.html

计算方式:被测分支/全部分支。文章源自玩技e族-https://www.playezu.com/204171.html

任意输入一个数,不能能分支故覆盖100%。文章源自玩技e族-https://www.playezu.com/204171.html

三、条件覆盖率文章源自玩技e族-https://www.playezu.com/204171.html

什么是条件:结果为true或false。文章源自玩技e族-https://www.playezu.com/204171.html

计算方式:被测条件数/全部条件数。文章源自玩技e族-https://www.playezu.com/204171.html

  # 请输入用户名和密码
  username = input("请输入用户:")
  passwd = input("请输入密码:")
  if username == 'admin' and passwd == '123456':
   print('登录成功')
  else:
   print('登录失败')

单元测试覆盖率怎么算?插图1
文章源自玩技e族-https://www.playezu.com/204171.html

分母为8,运行3个,所以条件覆盖率为3/8。

四、路径覆盖率

从开始到结束的过程。

计算方式:被测路径数/全部路径数。

例子:

单元测试覆盖率怎么算?插图2

输入数据:admin,654321。

语句覆盖率:4/6。

分支覆盖率:2/4。

条件覆盖率:TFF,3/8。

分支-条件覆盖率:5/12。

路径覆盖率:1/4。

 
匿名

发表评论

匿名网友
确定

拖动滑块以完成验证