为什么说“精准测试”是治疗富贵病的药?

文章讨论了精准测试如何解决自动化测试中的效率问题,特别是对于大规模测试用例的情况。精准测试通过关联测试用例与代码变动,只执行相关部分的回归测试,提高了缺陷发现的效率。然而,实施精准测试可能面临如覆盖率数据合并的挑战,且需要考虑自动化测试的覆盖率和成本。文章提出,如果全回归测试能在短时间内完成,或者通过加强单元测试,可能不需要精准测试。此外,精准测试对于不会编写自动化测试的团队,可以用于辅助评估手工测试的效果。

为什么说“精准测试”是治疗富贵病的药?

不要因为“穷”就乱吃药。

Round1 你是真富贵还是名字叫“富贵”

Q1: 什么是精准测试?

A: 百度百科里能找到的精准测试的定义,就是本文所说的精准测试。

Q2: 那什么是富贵病?

A: 讲一个故事,某个团队有1万多条接口自动化用例,跑一次全回归要超过24小时。再讲一个鬼故事,某个团队有1万多条UI自动化测试用例,跑一次全回归要3天。这就是笔者所说的自动化测试富贵病。

Q3: 为什么精准测试能治富贵病?

A: 通过精准测试实现自动化用例和代码之间的关联关系,然后针对代码的变动部分挑拣出相应的测试用例进行快速的回归。基于风险的测试表明,缺陷往往发生在变动的部分。笔者在之前的故事中也提到了回归测试的通过率是99%,也就是发现缺陷的概率是1%。因此,理论上如果能识别出这1%的用例并执行,就能将(回归)测试发现缺陷的效率提高99倍。没错,理论上的投资回报率就是这么高。

Q4: 精准测试这么好,我们也要上马精准测试!

A: 首先问一下, 你是富二代,还是拿到了大厂科技股的新贵?是真富贵,还是只是碰巧名字叫“富贵”?

Round2 你的工作是在挖坑的然后填坑吗?

在上马精准测试的过程中,通常会遇到以下的一个巨坑。

Q5:为什么要做不同版本/制品之间覆盖率数据的合并?
A因为我们的测试用例不会在一个版本上面跑全部的用例,我们会换不同的版本,或者说制品。所以要做跨版本的覆盖率合并。这个功能原生jacoco不支持,需要我们测试开发进行二次开发。
Q6:那为什么所有的用例不能在一个版本上跑完呢?
A因为我们是手工执行用例,不可能是在同一个版本上完成的,要跨几个轮次才行。
Q7:那你的自动化用力回归是一次全部执行的咯。
A但是自动化用例只是对回归用例的自动化,我们的新用例还是手工执行的呀?我想看新用例的对代码的覆盖情况。
Q8:那么说,问题的原因在于那是不是说,如果新测试用例能够同步实现自动化就不需要做跨版本的覆盖率合并了,因为每次都全量执行了。
A 我们没有那么多自动化用例。我们的自动化也是刚起步,覆盖率也没那么高呀。
Q9:那为什么不先做自动化测试呢?
A 我觉得精准测试也很有价值啊。而且我们(测试)老大让我做精准测试平台。

对的,米国大萧条时期,也有类似的工作,就是政府出钱在某个地方挖个坑,然后过几天再填起来,工资就这么到手了。

Round3 精准测试真的需要嘛?

Q1: 如果你的全回归能在分钟级实现,至少是半小时内实现。你还会考虑使用精准测试嘛?

A: 都分钟级了,上个厕所,喝个咖啡,楼下抽个烟不好嘛,搞啥精准嘛。万一漏测了咋办,3.25你帮我背嘛。

Q2: 那一般开发同学的单元测试就是分钟级啊,你考虑一下把你的用例下沉到代码级的测试嘛,不就非常快了。甚至可以实现开发人员每次提交代码都触发全回归啊。

A: 那怎么行,开发人员每次提交都全回归了,那我不是连个bug都发现不了了嘛。不是要下岗失业了。我就负责种树,让别人摘果子啊,不行不行。

Q3: 你们的测试人员都不会写自动化测试代码,为什么要搞精准测试啊?

A:我们的测试都不会写自动化用例,但是可以通过精准测试查看每次手工测试用例执行后的代码覆盖情况啊。这样我们就可以通过这个数据来补充测试,发现更多的缺陷。

Q4: 那直接看代码不是一样的吗?

A: 干嘛看代码,厂商/测开提供的工具不是能看嘛,而且还能实时染色呢,你要不要看看?

Q5: 问你个数学问题,80%+80%= ?

A: 你哪来的?保安~!

最后:下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

全部资料获取

【电力系统】单机无穷大电力系统短路故障暂态稳定Simulink仿真(带明文档)内容概要:本文档围绕“单机无穷大电力系统短路故障暂态稳定Simulink仿真”展开,提供了完整的仿真模型与明文档,重点研究电力系统在发生短路故障后的暂态稳定性问题。通过Simulink搭建单机无穷大系统模型,模拟不同类型的短路故障(如三相短路),分析系统在故障期间及切除后的动态响应,包括发电机转子角度、转速、电压和功率等关键参数的变化,进而评估系统的暂态稳定能力。该仿真有助于理解电力系统稳定性机理,掌握暂态过程分析方法。; 适合人群:电气工程及相关专业的本科生、研究生,以及从事电力系统分析、运行与控制工作的科研人员和工程师。; 使用场景及目标:①学习电力系统暂态稳定的基本概念与分析方法;②掌握利用Simulink进行电力系统建模与仿真的技能;③研究短路故障对系统稳定性的影响及提稳定性的措施(如故障清除时间优化);④辅助课程设计、毕业设计或科研项目中的系统仿真验证。; 阅读建议:建议结合电力系统稳定性理论知识进行学习,先理解仿真模型各模块的功能与参数设置,再运行仿真并仔细分析输出结果,尝试改变故障类型或系统参数以观察其对稳定性的影响,从而深化对暂态稳定问题的理解。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值