变异测试 java_编码的喜悦……以及Java中的变异测试

变异测试是一种评估单元测试质量的方法,通过引入代码微小变化(突变)并检查测试是否能检测到这些变化。文章探讨了变异测试的工作原理、示例、等效突变可能导致的假阳性问题,以及其相较于传统覆盖率报告的优势。
摘要由CSDN通过智能技术生成

变异测试 java

多年以来,为源代码编写单元测试一直是一种好习惯。 并且还可以使用测试覆盖率报告来查看测试覆盖了多少代码。 尽管行+分支覆盖率报告非常有用,但是它并不能告诉您单元测试的实际效果。 因此,甚至在测试中没有一个断言的情况下,甚至有可能达到100%的覆盖率。

对更好的测试方法感兴趣,我参加了今年的“ 欢乐编码”会议中的“突变测试”研讨会。
变异测试是执行和分析单元测试的结果和覆盖范围的一种截然不同的方法。 无需测量单元测试“访问了”多少代码,而是确定单元测试实际上“测试了”多少代码。

那么它实际上是如何工作的

变异测试背后的基本思想是对(字节)代码进行微小的更改(变异),然后执行测试以查看是否被单元测试检测到。
可能的突变是将“ > ”更改为“ >= ”,将“ ++ ”替换为“ -- ”,并删除“ void ”方法调用。
因此,每个突变都会创建代码的变更版本,称为“突变”。

在进行实际的变异测试之前,首先需要对原始代码执行单元测试,以查看是否没有测试失败。

然后,将针对每个“突

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值