测试三大难题之一 “测试有效性” 的应对策略
创始人
2024-07-09 09:20:46
0

在《软件测试三大难题:我们必须面对和解决 》文章中提到三大难题,前面已经讨论了两大难题:

  • 测试三大难题之一“Test Oracle”的应对策略

  • 《测试三大难题之一 “测试充分性” 的应对策略》

下面则讨论最后一道难题:“测试有效性”。

测试有效性,如前面所说,它更关注如何测的问题、更关注测试过程的效率,即如何在有限的资源和时间内,最大化测试的价值。就这一点,其实三年前发表过一篇文章:如何最大化软件测试效能?(附分享的PPT),把这问题说得比较透测。

如果更准确说,测试有效性更关注每一项测试、每一次测试都是有效的,没有做无用功。之前,有同学分享过在单元测试的有效性,即用变异测试来检验测试的有效性。简单说,代码中某个被测试的条件做了改变,原先测试这项条件的测试用例能够发现这个Bug,即能够杀死所发生的变异。否则,原先测试这项条件的测试用例不能发现这个Bug,说明这项测试用例是无效的。

那么对接口测试、系统测试,也可以引入类似的概念来检验测试的有效性。只是在单元测试的代码中注入缺陷比较容易,在系统级注入测试会复杂,甚至引起一连串的问题。看看能否将常规的测试和混沌工程联系起来?你可以试着回答这样的问题。

测试有效性,除了通过变异测试来检验之外,其实就是要:

  1. 消除重复测试

  2. 消除测试中的等待时间

  3. 消除没必要的测试

  4. 消除没有价值的测试

第一项比较简单,第二项比较明确,做起来还是需要功力,包括如何构建虚拟的测试环境,并和CI/CD集成,做到持续测试。

第3项和第4项看似接近,其实含义是不同的。根据测试目标或基于风险的测试策略,我们不需要做到非常接近100%的测试,例如我们根据80/20原则,只要覆盖80%的风险,那么再做覆盖额外20%的测试是不必要的。

没有价值的测试,是指测试没有从用户的角度出发、没有服务于产品愿景。例如,虽然我们做了某些功能的测试,但这项功能设计就是错误,这项功能就已经偏离用户需求、偏离产品愿景方向,做这类功能的测试,就是没有意义的。

测试有效性,也存在着和测试充分性的博弈,片面追求某一项目标,可能都会带来新的问题,达到平衡,才是最重要的。要想达到平衡,这又涉及测试策略,可以参考软件测试三大难题:我们必须面对和解决》。

测试有效性,也可以参考我和两位朋友联合翻译的一本书《Effective in 软件测试》。

这周在英国剑桥大学,就先写这么多。每一位读者可以有更多的科学、哲学的思考,把测试引向更有价值、更高效的测试之路上。

(剑桥的数学桥,2个小时之前拍摄)

相关内容

热门资讯

分析开挂!约局吧app有挂吗,... 分析开挂!约局吧app有挂吗,浙江宝宝游戏透视辅助器,开挂(透视)辅助下载(有挂详情);最新版202...
日本国民民主党暂停其党首玉木雄... 12月4日消息,据悉,日本国民民主党决定暂停其党首玉木雄一郎职务3个月,原因是其被曝出牵涉出轨丑闻。...
广东深圳上半年外籍人员非现金支... 12月4日消息,随着我国“免签”新政实施,入境游持续火爆,广东深圳打造全域支付示范区,通过便捷的支付...
工信部:我国正加快培育发展原子... 12月4日消息,2024装备制造业发展大会正在重庆举办。会上,工业和信息化部相关负责人表示,我国将推...
银行间中长端利率债活跃券下行普... 12月4日消息,银行间中长端利率债活跃券下行普遍超过1.5bp,7年期国债活跃券利率下行1.6bp报...
机器人概念持续爆发,二十余只成... 12月4日消息,机器人概念盘中持续爆发,柯力传感走出12天5板,再创历史新高,埃夫特、锐新科技、南方...
了解辅助!wepoker脚本下... 了解辅助!wepoker脚本下载,传送屋激k辅助器,开挂(透视)辅助安装(有挂秘笈);1、不需要AI...
分享开挂!hhpoker可以控... 《分享开挂!hhpoker可以控制吗,顺欣茶坊辅助器最新版在哪,开挂(透视)辅助插件(竟然有挂)》 ...
曝光开挂!pokemmo免费脚... 曝光开挂!pokemmo免费脚本,杭州都莱大菠萝辅助器,开挂(透视)辅助脚本(新版有挂);亲真的是有...
原来有开挂!wepoker插件... 原来有开挂!wepoker插件功能辅助器,佛手在线大菠萝辅助,开挂(透视)辅助平台(有挂细节);详细...