首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >突变测试-原因

突变测试-原因
EN

Stack Overflow用户
提问于 2015-07-27 18:26:39
回答 1查看 91关注 0票数 0

突变检测,有很多假阳性。尽管有这些假阳性,为什么以及什么时候我应该使用突变测试?

例如。

代码语言:javascript
复制
public int add(int a,int b){ 
return a+b; 
}

public void testAdd() {
add(2,2);
...
}

如果突变结果为,则返回a*b

测试用例仍然可以通过,但它不应该通过。

EN

回答 1

Stack Overflow用户

发布于 2015-07-28 17:11:07

您给出的示例不是假阳性(通常称为等效突变)

当你的单个测试不能完全描述你想要的行为时,突变体会存活下来(另外)。也就是说,突变测试告诉你你的测试套件是有缺陷的。

这应该会提示您添加更多描述行为的测试(例如,断言1+2= 3)。

当你添加更多的测试时,这个变种就会被杀死。

你应该在你的开发中使用突变测试来发现你的错误。尽管理论上等价的突变体是一个大问题(你只能通过手动检查来确定存活的突变体是否等价),但在实践中,我发现它们很少成为问题-至少在使用pitest进行变异时是这样。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31650703

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档