如何验证测试中的项目列表

时间:2010-08-04 10:29:01

标签: mysql unit-testing junit

我正在编写一个测试用例,其中我发送了一个要保存在数据库中的字符串列表。 然后我将从数据库中检索那些并且必须验证一切正常。

我写了一个

assertNotNull(list) 
assertEquals(listSize, response.listSize())

但是我想验证实际内容也一样。但是我的assertEquals失败了,因为返回时字符串列表的顺序不一样。

您如何验证此类事情?

2 个答案:

答案 0 :(得分:2)

呃...为什么不通过按字母顺序创建初始列表来强制排序(或使用sort)然后在SQL中使用ORDER BY子句?

也就是说,您可能需要遍历列表中的元素并进行比较(因为原始列表中的键和从数据库中检索的键也可能不同)。

答案 1 :(得分:1)

假设你有一个期望的列表,你可以做的是你想要的字符串

assertTrue (response.containsAll(expected))

与您的尺寸验证相结合可确保列表完整且不包含其他内容。