首页 > 其他分享 >测试设计左移实践

测试设计左移实践

时间:2022-10-07 19:16:24浏览次数:43  
标签:场景 左移 实践 评审 用例 文档 测试 设计

背景

业务线为了小步快跑,加快交付频率,实行了周迭代,以单周或者双周的周期完成评审、开发、测试和上线。
实行了一段时间以后,遇到了一些新的挑战:

  1. 故事拆小,启动的项目数变多,可能1个测试要介入到多个项目,虽然推动开发进行自测,但仍有不少项目需要测试提供用例给开发。
  2. 整体研发周期缩短,节奏较快,投入在前期评审和设计的时间较短,后期发现问题容易造成返工和浪费。

所以针对以上两点,期望尽可能的提高测试对项目介入的覆盖度——能够接较多的有质量风险的需求,至少提供用例保障 ;同时能够提高研发效率尤其是前期评审和设计的效率——不返工,周期的确定性,利于排期和资源流动

我们发现:只有真正开始测试设计,才能更好的发现业务和逻辑上的问题,所以尽可能早开展测试设计能带来一定收益;同时,尽可能早开展用例设计,能够增大测试用例设计的时间窗口,缩短技术方案评审后到完成用例所需的周期,提高承接项目用例编写的数目。

实践

我们的实际做法是:需求文档产生后立即开展测试设计,在技术方案出来前基本完成用例设计,在技术方案评审后进行一些补充,然后快速进行用例评审和交付用例。
测试介入的越早,获取到的信息越少,如何通过较少的信息去产生较好质量的用例是一个难点。要解决这个问题,我们手上有两个较为有利的条件:

  1. 需求颗粒度小,需求更为明确,能够通过需求完成主体用例的编写
  2. 之前导购敏捷左移实践积累了一些经验,有些最佳实践指导。显卡界也面临类似的问题,通过低分辨率画质重建成高分辨率图像来提高画面帧数和游戏性能,采用的办法大概是通过算法去预测和脑补出缺失像素图像。我们也可以参考类似的做法,利用基础业务检查点和设计参考点尽可能完善我们的测试设计。

所以为了确保用例设计的完备程度,核心思路是根据需求文档完成主场景用例编写,后续通过迭代改进的方式逐步去完善用例,在每次设计过程中,通过以前的敏捷左移实践去填补测试用例的设计点。

具体做法:

  1. 阅读需求文档,初步看下是否有大的问题,找产品进行确认,之前总结了一些需求评审check的套路和方法,如需求评审套路。
  2. 根据需求文档开始设计场景用例,可参考业务需要关注的测试场景、测试方案参考点等实践文档,查看基本的场景下是否有问题和疑问,有的话可以留空标注,需求评审会上对齐。
  3. 对于边界场景、异常场景等技术实现相关的场景可以做基本设计技术方案后优化,或者跟开发沟通确认是否有这部分的设计,推动开发完善设计。
  4. 技术方案评审后进行最终用例的完善,最后进行用例评审。

在目前这套流程中,和传统用例设计模式相比一个较大的区别是:之前测试更多的是等产品、开发准备好设计文档,被动的从中接受信息,但现在更多的是需要通过沟通来获取信息,在这过程中,一方面测试的心态更多积极主动,对项目更具备把控力;另一方面能够推动开发、产品提前思考测试提出来的问题,在设计时就能澄清一些可能的问题,减少后期用例评审或开发阶段可能出现的重复沟通和方案修改。

结果

实践了几个项目,个人的收获:

  1. 前期能够发现更多的问题,其中有些模糊点涉及外部是会影响可行性且需要提前沟通确认的,提前提出减少了较多的不确定性和沟通成本。
  2. 工作量前移,技术方案评审后能够更快交付用例,70%左右的用例都可以在技术方案前ready,一般单周的项目开发时间1-2天,双周3-4题天,基本能够在联调前给出用例。
  3. 掌控性更强,一般在技术评审后会大概制定下里程碑,有了基本的测试用例和设计,对项目工时、风险评估更准确些。

标签:场景,左移,实践,评审,用例,文档,测试,设计
From: https://www.cnblogs.com/opama/p/16760421.html

相关文章

  • 【测试】Jmeter做压力测试
    1、首先在Jmeter可视化界面里配置好线程数和执行时间   2、点击保存该测试样例到一个指定的目录,如 D:\CodeSoftware\apache-jmeter-test-case\测试案例-01.jmx ......
  • [TDD] 如何测试 React 异步组件?
    前言本文承接上文如何测试驱动开发React组件?​,这次我将继续使用@testing-library/react来测试我们的React应用,并简要简要说明如何测试异步组件。异步组件的测试内容......
  • Five86-3靶机测试记录
    靶机信息靶机下载地址:​​https://www.five86.com/five86-3.html​​下载好靶机解压后,直接打开文件夹里的.ova文件即可将靶机设置为NAT模式后,kali和靶机为同一网段信息搜集......
  • 网络字节与主机节序的转换函数实践
    #include<netinet/in.h>unit16_thtons(uint16_thost16bitvalue);uint32_thtonl(uint32_thost32bitvalue);//均返回网络字节序的值unit16_tntohs(uint16_tnet16bit......
  • junit参数化测试的使用方法
     JUnit参数化测试的五个步骤:(1)为准备使用参数化测试的测试类指定特殊的运行器org.junit.runners.Parameterized。(2)为测试类声明几个变量,分别用于存放期望值和测试所用......
  • 实验2:Open vSwitch虚拟交换机实践 实验3:OpenFlow协议分析实践
    实验2:OpenvSwitch虚拟交换机实践一、实验目的能够对OpenvSwitch进行基本操作;能够通过命令行终端使用OVS命令操作OpenvSwitch交换机,管理流表;能够通过Mininet的Pytho......
  • 实验5:开源控制器实践——POX
    基础要求tcpdump验证Hub模块h1pingh2的tcpdump抓包结果截图h1pingh3的tcpdump抓包结果截图tcpdump验证Switch模块h1pingh2的tcpdump抓包结果截图h1ping......
  • DevOps落地实践点滴和踩坑记录-(2) -聊聊平台建设
    很久没有写文章记录了,上一篇文章像流水账一样,把所见所闻一个个记录下来。这次专门聊聊DevOps平台的建设吧,有些新的体会和思考,希望给正在做这个事情的同学们一些启发吧。​​......
  • 实验3:OpenFlow协议分析实践
    (三)实验报告3.1请用Markdown排版;3.2基础要求只需要提交导入到/home/用户名/学号/lab3/目录下的拓扑文件,wireshark抓包的结果截图和对应的文字说明;3.2.1搭建所示拓扑,完......
  • 性能测试知识科普(三)
    上一篇文章聊了性能测试中常见的测试策略以及如何选择合适的策略进行测试活动开展。这篇文章是性能测试知识科普的第三篇,我想聊聊很多性能测试小白最关心也最核心的问题......