所以这是一个相当简单的问题,我已经改用assertEquals来解决它,但只是想知道为什么它不起作用:
assertThat(list.get(0).getStringValue().equals("1234567811"));
在调试过程中检查了变量之后,即使在检索到的字符串不匹配的情况下,上一行也将被视为通过。
当我使用时:
assertEquals(list.get(0).getStringValue(), "1234567811");
它可以正确拾取错误。
据我了解,assertThat也应对此起作用,所以我很好奇为什么不这样做?
谢谢
答案 0 :(得分:3)
您需要具有此表格才能正常工作
assertThat(actual, is(equalTo(expected)));
所以应该是这样
assertThat(list.get(0).getStringValue(), is("1234567811"));
或
assertThat(list.get(0).getStringValue(), equalTo("1234567811"));
可以在这里阅读更多
答案 1 :(得分:1)
AssertJ似乎使用了流利的方法,因此您需要做类似的事情
assertThat(list.get(0).getStringValue()).isEqualTo("1234567811");