我正在尝试调试cucmber测试,以便找出失败原因:
org.junit.ComparisonFailure:预期:<#00 [a3b5]>,但为:<#00 [0000]>
这是代码的失败部分
String actualColor2 = String.format("#%02x%02x%02x", hexValue1, hexValue2, hexValue3);
Assert.assertEquals("#00a3b5", String.format("#%02x%02x%02x", hexValue1, hexValue2, hexValue3));
在调试模式下,我可以看到所有值,并且 actualColor2 是#00a3b5 但是,如果我运行测试,它会在此行上失败,例如 actualColor2 是#000000
试图重建项目,重新启动计算机等。
答案 0 :(得分:0)
这可能是因为必须测试字符串等于的方式。可能您应该尝试
Assert.assertTrue('expected matches actual', expected.equals(actual));
不确定语法是否正确,但是应该可以。因为我记得在某处比较两个字符串时,assertEquals可能不是100%准确的。如果我错了,请纠正我。 :)