解读 Flaky Test

Flaky Test是指在相同条件下测试结果不确定的现象,表现为有时通过、有时失败。这种测试现象在自动化测试中尤为突出,可能导致软件发布延误。常见的Flaky Test原因包括同步/定时问题、网络问题、浏览器差异、测试数据依赖等。解决Flaky Test需要从测试实施、环境稳定性及网络分析等方面进行排查,通过改进测试设计、加强基础设施管理和修复应用问题来确保测试的可靠性。
摘要由CSDN通过智能技术生成

解读 Flaky Test 

Flaky Tests是一种不可靠的测试现象:即在同样的软件代码和配置环境下,得不到确定(有时成功、有时失败)的测试结果。

从逻辑上讲,当一遍又一遍地进行相同的测试时,代码将产生相同的结果——应用程序要么每次都能正常工作,从而通过测试,要么每次都不能正常工作,从而导致测试失败。测试结果应该是一致的(Consistent),即一段代码要么符合预期的运行结果,通过测试;要么与预期结果不符,测试失败。

然而,实际中执行测试时会出现完全相同的代码和配置,但是出现不一致的测试结果,那么这种现象被称为 Flaky Test。

Flaky ['fleɪki] 的英文意思是:易碎成小薄片的;易剥落的;行为古怪的;好忘事的

Flaky Test 是表达一种不可靠的测试现象。

在 Regression Test 时,尤其是采用自动化的方式执行测试时,测试者编写了自动化测试Scripts执行测试,一些 Test Scripts 有时候执行成功,有时候执行失败了,这时就产生了 Flaky Test的现象。

Regression Test 是敏捷开发过程中非常重要的一种测试,当发生了功能变更,或者开发团队修复了缺陷之后,为了确保产品功能正常,通常需要执行Regression Test,能够采用自动化方式执行时,最后执行自动化回归测试。

在回归测试中,如果所有测试都通过了,开发人员和测试人员通常不会进一步检查测试运行。如果测试中有失败的测试用例或者自动化测试Scripts时,开发者和测试者就需要引起关注,查明失败的原因。

 

查找出现 Flaky 的原因

在查找失败测试的原因时,开发人员需要收集数据,试图发现看似随机的结果之间的差异,以便找出失败测试的原因。

代码应该被重新检查,测试本身也应该被重新检查,如果没有发现问题,那么就需要检查外部因素,看看它们是否是问题的核心。

开发人员可能会查看通过的测试是否在一天中的某个时间运行,而失败的测试是否在一天中的不同时间运行,某些程序是否在测试通过时没有运行的失败测试的同时在开发人员的计算机上运行,或者失败的测试是在测试的同一点运行还是在测试的不同时间运行。

有时,Fl

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值