变异测试mutation testing
一种软件测试技术,通过对代码做细微改动生成变异体,检查现有测试能否将其发现,以评估测试发现缺陷的能力。
1篇文章
最近提及 变异测试是一种软件测试技术,先对程序中的运算符、条件、常量等做细微改动,生成变异体,再运行现有测试,检查每个变异体是否会导致测试失败。导致测试失败的变异体被视为已被杀死,被杀死变异体所占的比例称为变异分数,用于评估测试套件的质量。
代码覆盖率只能说明代码是否被执行,而变异测试衡量的是测试能否真正发现所执行代码中的错误行为。这一概念于20世纪70年代提出,常用工具包括面向Java的PIT和面向JavaScript的Stryker。
本条目依据AIPOST的文章与广为人知的事实整理。如有错误,请通过更正请求告诉我们。