当前位置: 首页 > news >正文

测试用例级别总结

看了几篇关于用例级别如何设定的文章, 总结总结吧。

  根据二八原则或者称数据统计,前20%的用例可以发现80%的重要BUG。

  当设计测试用例时,分配优先级非常不容易,且这个优先级也不是固定不变的。

  一般,我们会假设发现的bug的严重程度和bug对应的测试用例的优先级是平行的。

  1、最高(又称Build Verification tests)也叫冒烟测试用例,一组你运行以确定这个build版本是否可测的测试用例。

  2、高:这种用例运行,能发现重要的错误,或者它能够保证软件的功能是稳定的。俗称大的基本功能的测试用例

  3、中:检查功能的一些细节,包括边界,配置测试

  4、低:较少执行的测试用例,并不代表它不重要,而是说不是经常被运行。例如压力测试错误信息等。

  用例级别设置的流程:

  1、如果没有很多的时间来确定优先级,那么可以先大致的进行划分:

  把所有功能性验证的用例标注为高

  把边界值或错误能力的用例标注为中

  把非功能性和易用性的标注为低

  2、提升和降级

  针对1描述的所有高级别的功能性用例划分为重要和不十分重要两种,然后重要的保持高,不十分重要的降级为中。同理,对应中级别的用例,重要的进行升级,不十分重要的保持中。对应低级别的,重要的升级,不十分重要的保持。

  3、确定BVTs

BVT (Build Verification Test)

 BVT是在所有开发工程师都已经检入自己的代码,项目组编译生成当天的版本之后进行,主要目的是验证最新生成的软件版本在功能上是否完整,主要的软件特 性是否正确。如无大的问题,就可以进行相应的功能测试。BVT优点是时间短,验证了软件的基本功能。缺点是该种测试的覆盖率很低。因为运行时间短,不可能 把所有的情况都测试到。

  将高优先级的用例划分为严重和重要, 严重的将升级为bvts

  经过这个流程后,大致会控制bvt10% 高为25% 中55% 低10%

  具体还要结合具体的项目和质量目标确定。

倘若从文档的角度,用例的级别首先要继承需求点的优先级级别,整理的测试需求进行优先级定义,然后对需求对应的测试用例进行优先级定义;
  因为在根据客户需求和产品需求说明书提取测试需求时,在所有的需求中,有客户急需使用的部分,有客户频繁使用的部分,有系统绝对不能出现错误的部分,这些都是高级别的需求点。

  所以要考虑四点:

  1、测试需求的级别

  2、测试用例导致的错误的级别

  3、测试用例对应的场景使用的概率(频率)

  4、测试用例发现问题的概率

  所以在实际测试中,若用例发现的bug频率很高,我们就应该适当地调节它的级别。

  又比如一个定义级别很高的用例,发现在实际测试中出现错误的触发条件是否罕见,所以就适当降低,或者客户需求产生了变化,对某个需求要求很低了,所以也适当降低。

  因此,

  1、建议将涉及到业务流程的用例,整理到一个专区,定义为P4

  2、每一个需求的主测试用例定义为P4

  3、每一个需求的辅助测试用例定义为P4或P3

  4、级别为高的需求点的完善性测试用例,建议性 易用性等,定义为P3 P2

  5、级别非高的需求点的主测试用例为P3 或P2

  6、级别非高的需求点的辅助用例完善用例 建议用例易用性用例为P2 P1

本文出自seven的测试人生公众号最新内容请见作者的GitHub页:http://qaseven.github.io/

相关文章:

  • 物联网重新唤醒了这项失意已久的技术
  • 【转】单日峰值2T发送量邮件营销平台实践经验
  • 联手美的进军智能家居 阿里YunOS野心恐落空
  • 阿里曾尝试回购雅虎所持阿里集团余下股份
  • 为追踪网络攻击 美将建立大规模数据库
  • 大数据产业峰会云集 概念股有望再站风口
  • 印度体育教育初创公司 KOOH Sports 获得 220 万美元风险投资
  • 传百度拆分部分资产回国上市 进入实质操作阶段
  • 2017年4月份宁夏电网“两个细则”考核补偿情况
  • 维基解密爆料CIA监控技术 科技公司如何接招
  • 应用托管在SAE不登录也能通过 phpmyadmin 管理数据库
  • C#中==运算符
  • 大数据时代,看“别人家的公司”是如何招聘的
  • 亚马逊云服务营收未来三年有望增长两倍
  • 商业智能在2017年的增长
  • [js高手之路]搞清楚面向对象,必须要理解对象在创建过程中的内存表示
  • Android单元测试 - 几个重要问题
  • CentOS 7 防火墙操作
  • cookie和session
  • Java的Interrupt与线程中断
  • Java读取Properties文件的六种方法
  • SSH 免密登录
  • vuex 笔记整理
  • 给初学者:JavaScript 中数组操作注意点
  • 关于Android中设置闹钟的相对比较完善的解决方案
  • 爬虫进阶 -- 神级程序员:让你的爬虫就像人类的用户行为!
  • 容器化应用: 在阿里云搭建多节点 Openshift 集群
  • 腾讯大梁:DevOps最后一棒,有效构建海量运营的持续反馈能力
  • 微服务框架lagom
  • 在electron中实现跨域请求,无需更改服务器端设置
  • ​LeetCode解法汇总2182. 构造限制重复的字符串
  • #!/usr/bin/python与#!/usr/bin/env python的区别
  • $L^p$ 调和函数恒为零
  • (02)vite环境变量配置
  • (1)Android开发优化---------UI优化
  • (14)目标检测_SSD训练代码基于pytorch搭建代码
  • (2)nginx 安装、启停
  • (26)4.7 字符函数和字符串函数
  • (C语言)求出1,2,5三个数不同个数组合为100的组合个数
  • (rabbitmq的高级特性)消息可靠性
  • (附源码)ssm高校实验室 毕业设计 800008
  • (附源码)计算机毕业设计SSM智慧停车系统
  • (每日持续更新)信息系统项目管理(第四版)(高级项目管理)考试重点整理 第13章 项目资源管理(七)
  • (十三)Flask之特殊装饰器详解
  • .Net 垃圾回收机制原理(二)
  • .netcore 如何获取系统中所有session_ASP.NET Core如何解决分布式Session一致性问题
  • .netcore如何运行环境安装到Linux服务器
  • .NET程序员迈向卓越的必由之路
  • .NET中的Exception处理(C#)
  • @transactional 方法执行完再commit_当@Transactional遇到@CacheEvict,你的代码是不是有bug!...
  • [ C++ ] 继承
  • [ vulhub漏洞复现篇 ] ThinkPHP 5.0.23-Rce
  • [\u4e00-\u9fa5] //匹配中文字符
  • [23] GaussianAvatars: Photorealistic Head Avatars with Rigged 3D Gaussians
  • [AutoSAR 存储] 汽车智能座舱的存储需求