2

さて、私はしばしばある種のセットを返すメソッドを持っています。このようなメソッドの単体テストの問題は、セットに対する反復が常に同じ順序でアイテムを返すという保証がないことです。

セットを検証するための好ましい方法はありますか?

ピーター

4

2 に答える 2

2

期待値をセットに入れてから、期待値と実際のセットでassertEqualsを使用するだけです。それは魅力的です、例えば

Set<String> expected = new HashSet<String>(Arrays.asList("expected", "items"));
...
Set<String> actual = ...;
Assert.assertEquals(expected, actual);
于 2010-06-19T04:12:38.053 に答える
0

2つのセットは等しい、つまり、両方に互いに含まれている場合、同じアイテムが含まれていることを意味します

Assert.assertTrue(s1.containsAll(s2) && s2.containsAll(s1))

SetUtils.isEqualSetもあります

于 2010-06-19T04:11:09.370 に答える