对CheckList的执行发起的思考?

(1)功能越来越多,CheckList越补充越多,执行CheckList时间越来越长,如何减少上线的验证时间?
(2)减少上线验证的时间外,如何保证质量?上线后少出现漏测?
(3)用例如何划分,方便后期新人员查看与维护(补充和筛减等)?
(4)用例如何统计,方便根据用例条数评估执行时间?

预期的收益与目标

(1)根据不同的版本执行不同的CheckList用例,减少验证时间
(2)保证所有功能的主流程与功能均包含,避免上线后的遗漏
(3)用例按模块进行划分。模块中在按照功能点进行划分编写用例。方便维护
(4)通过某种方式记录所有模块的用例条数,在用例进行更新后及时同步数据,已数据来判断上线时的工作量。
(5)能尽快的完成上线,且需要保证线上用户的使用质量

解决思路:

将CheckList进行分类,根据不同的分类在不同的情况下分别执行对应的类别。定期性的执行全CheckList用例,保证在之前版本中出现一些细微的改动被遗漏掉的可能性。依此来减少用例的执行时间。又之前的全用例执行4小时缩短到2小时。同时也保证了主功能模块的功能正确性,避免对用户的使用上造成不便引来不好的投诉反馈等。

实现方式:
  CheckList的分类,共三类且共同遵守的原则为:根据功能模块的分配优先级

  CheckList_完整版:

    所有功能模块用例,用例较全,所需执行时间长,可定为3个版本一执行完整版用例等。

  CheckList_精简版:

    包含所有功能模块,用例主要涉及到主功能模块或层级较浅为1到2级的用例。对于重点模块及用户常使用的模块可进行稍微的细化。保证用户在使用时出现功能不可点击、闪退、白屏等问题。用户不常用的模块可进行较粗糙的用例编写。因此不需要太精细,大胆的删除不必要的用例。因为在功能测试时,对于模块的验证一定是细而全面的。所以在CheckList时只是作为再次的走查校验。在小版本更新迭代时,用例执行选择“精简版用例”。依此来缩短执行时间。
  

  ReviewList_线上:

    包含所有功能模块,用例整体性较粗糙。在生产环境用来执行。目的是为了再次确认预发布、测试环境的改动未影响到线上,也再次确保了线上质量的可靠稳定性。一般由于测试环境和预发布环境的某些限制,导致某些功能不能执行,此部分的功能也会遗留到生产环境进行验证。

用例的精简方法:

(1)采用先减后加,放开胆子去删的思路,后面再查缺补漏即可
(2)针对1级用例中与当前版本不符的用例进行降级。确定好它的等级并进行标注。
(3)针对2级用例的筛减,一般来说2级用例是量最大的,1级和3级用例都只占一小部分而已。此部分要做到大胆的删减,原则是只留属于主路径和重要的异常路径,其他全部降为3级

用例的评审:

目的:用例够精简且不会遗漏
具体做法:
(1)主路径:

  打开app,检查每个模块的用例,app中能看到的所有入口必须涵盖在1级用例中。

(2)用户常用场景:

  将用户常用场景按照模块列出来,对照相对应的用例,1,2级用例必须全部涵盖。

(3)运用集体智慧:

  人的经验转换,一起共同测试的同学聚在一起,按照模块一起review用例,觉得哪里有遗漏,按照经验什么地方经常出问题,是否需要增加用例,讨论之后觉得合理的加入。

(4)线上缺陷&线上反馈:

     版本发布后,根据线上缺陷&线上反馈来检查,是否是测试用例遗漏造成的,分析线上缺陷的根因,根据严重等级和用户反馈数来决定是否要添加用例,以及应该添加到哪个阶段最合适。

后期的维护:

(1)线上bug跟进,看是否有bug是因为精简用例而造成的缺失,分析并查缺补漏
(2)根据版本中功能的增加,应用上面的方式进行用例的精简与统计。

总结(实现方式后的收益与目标):

  小版本的发布:
  用例条数:由原来的用例数减少了50%的执行量。
  执行用例时间:在原来的执行时间上至少缩减了50%的时间。

  结合我们多个版本的经验使用,用例筛选与预留做的好,在执行中会获得很大的收益

具体示例做法截图:

  

  

  

CheckList 如何梳理可减少上线的验证时间(总结篇)的更多相关文章

  1. js前端验证时间大小

    replace(/\-/g, "\/")是根据验证表达式把日期转化成长日期格式 function checkStartTimeAndEndTime(startTime, endTi ...

  2. php读取excel时间42930转化为时间然后正则验证时间是否通过

    excel时间 function exceltimtetophp($days,$time=false) { if(is_numeric($days)) { //凯撒日计数,要把我们运用的从1970年开 ...

  3. jquery验证时间

    http://blog.csdn.net/guguojin/article/details/7045908 验证时间的正则表达式集合 //日期格式yyyy  PatternsDict.date_y= ...

  4. 关于WEB Service&WCF&WebApi实现身份验证之WCF篇(2)

    因前段时间工作变动(换了新工作)及工作较忙暂时中断了该系列文章,今天难得有点空闲时间,就继续总结WCF身份验证的其它方法.前面总结了三种方法(详见:关于WEB Service&WCF& ...

  5. Thinkphp 中的自动验证 上一篇有例子

    说明,只要定义了Model,在任何地方调用,都会进行验证.很方便. 必须是D方法,才会有效.M方法不会触发自动验证. 说明:这里没练习静态自动验证:如果用到静态验证首先自定义一个控制器,再在Model ...

  6. 关于WEB Service&WCF&WebApi实现身份验证之WebApi篇

    之前先后总结并发表了关于WEB Service.WCF身份验证相关文章,如下: 关于WEB Service&WCF&WebApi实现身份验证之WEB Service篇. 关于WEB S ...

  7. (转)[jQuery]使用jQuery.Validate进行客户端验证(初级篇)——不使用微软验证控件的理由

    以前在做项目的时候就有个很大心病,就是微软的验证控件,虽然微软的验证控件可以帮我们完成大部分的验证,验证也很可靠上手也很容易,但是我就是觉得不爽,主要理由有以下几点: 1.拖控件太麻烦,这个是微软控件 ...

  8. 通过扩展改善ASP.NET MVC的验证机制[实现篇]

    原文:通过扩展改善ASP.NET MVC的验证机制[实现篇] 在<使用篇>中我们谈到扩展的验证编程方式,并且演示了本解决方案的三大特性:消息提供机制的分离.多语言的支持和多验证规则的支持, ...

  9. 通过扩展改善ASP.NET MVC的验证机制[使用篇]

    原文:通过扩展改善ASP.NET MVC的验证机制[使用篇] ASP.NET MVC提供一种基于元数据的验证方式是我们可以将相应的验证特性应用到作为Model实体的类型或者属性/字段上,但是这依然具有 ...

随机推荐

  1. SpringBoot系列教程JPA之update使用姿势

    原文: 190623-SpringBoot系列教程JPA之update使用姿势 上面两篇博文拉开了jpa使用姿势的面纱一角,接下来我们继续往下扯,数据插入db之后,并不是说就一层不变了,就好比我在银行 ...

  2. springboot热部署JRebel插件

    激活参考:https://www.52pojie.cn/thread-906163-1-1.html 最后设置为离线,不然每次启动要重新激活 环境idea是2018.1.1版本 JRebel是最新版2 ...

  3. java web中的相对路径和绝对路径

    以往一直没注意javaweb中的相对路径和绝对路径问题,有时有问题了,才想起去看看是否是路径的问题,一直对路径问题都是一知半解.今天就姑且记录一下,毕竟事如春梦了无痕嘛,倘不记之笔墨,未免有辜彼苍之厚 ...

  4. JavaScript原生封装ajax请求和Jquery中的ajax请求

    前言:ajax的神奇之处在于JavaScript 可在不重载页面的情况与 Web 服务器交换数据,即在不需要刷新页面的情况下,就可以产生局部刷新的效果.Ajax 在浏览器与 Web 服务器之间使用异步 ...

  5. Redis的5中数据类型及应用场景

    Redis的全称是Remote Dictionary Server,本质上是一个Key-Value类型的内存数据库,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据Flush到硬盘行 ...

  6. lambda表达式笔记

    前几天一位好友分享了一篇文章,其中讲到了lambda表达式,正好最近看了一些内容,就做做笔记吧... lambda表达式服务于函数式接口,如果需要一个函数式接口的对象时,就可以用lambda表达式代替 ...

  7. [高清] 深入浅出Spring Boot 2.x.pdf + 代码

    ------ 郑重声明 --------- 资源来自网络,纯粹共享交流, 如果喜欢,请您务必支持正版!! --------------------------------------------- 下 ...

  8. python --- 字符编码学习小结(二)

    距离上一篇的python --- 字符编码学习小结(一)已经过去2年了,2年的时间里,确实也遇到了各种各样的字符编码问题,也能解决,但是每次都是把所有的方法都试一遍,然后终于正常.这种方法显然是不科学 ...

  9. .NET/C# 检测电脑上安装的 .NET Framework 的版本

    原文:.NET/C# 检测电脑上安装的 .NET Framework 的版本 如果你希望知道某台计算机上安装了哪些版本的 .NET Framework,那么正好本文可以帮助你解决问题. 本文内容 如何 ...

  10. springboot笔记08——整合swagger2

    Swagger是什么? Swagger是一个RESTFUL 接口的文档在线自动生成和功能测试的框架.利用swagger2的注解可以快速的在项目中构建Api接口文档,并且提供了测试API的功能. Spr ...