问题描述
我正在为 hashcode 方法编写变异测试。下面是我的一段代码
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = (prime * result)+ privateVariable.hashcode();
result = (prime * result)+ ((this.details == null) ? 0 : this.details.hashCode());
result = (prime * result)+ ((this.status == null) ? 0 : this.status.hashCode());
return result;
}
有谁知道我如何为这段代码编写变异测试?
解决方法
除非您对哈希码的执行方式有非常具体的要求,否则 EqualsVerifier 通常足以确保其行为合理(与 equals 实现相结合)。
但是请注意,您不会为代码“编写变异测试”,而是用 pitest(和其他变异测试工具)验证现有单元测试的有效性。