我正在连接到两个网站,从每个网站获取 json,并将它们转换为 java 对象。现在这些对象是列表,我想比较两者以查看列表一中的所有内容是否与列表二中的所有内容相同。我尝试了以下操作,但在 assertThat 下出现错误,我需要创建一个包含 assertThat 的新方法,但我只是简单地编写一个 junit 测试?
`
@Test
public void test_1() throws Exception
{
List<Sample> proj1 = getProject1();
List<Sample> proj2 = getProject2();
assertThat(proj1, hasItem(proj2));
}
`
最佳答案
看起来是因为您的 hasItem(proj2) 实际上传递的是完整列表,而不是要评估的单个项目。
例如,如果您将其更改为:
assertThat(proj1, hasItem(proj2.get(0)));
它应该是一个有效的方法调用
如果您想比较项目列表,那么这可能会有所帮助:http://junit.sourceforge.net/javadoc/org/junit/matchers/JUnitMatchers.html
关于java - 比较两个使用断言转换为对象的json列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18719225/