Listオブジェクトを要素の順序に関係なく比較することに関する多くの質問と回答が見つかりましたが、問題はより複雑です。他のプロパティの中でも、List。私は内側のリストの要素の順序にかかわらず、2つのbeanのassertEqualsを実行したい。これを行う簡単な方法はありますか?JUnit:リストの順序に関係なくListを含む2つのBeanを比較します
0
A
答えて
0
回答はhereです。アイデアは、hamcrestアサートを使用することです。あなたはJUnitのは、実際に私の提案は、あなたがあなたの同等メソッドをオーバーライドした場合、あなたはあなたが期待しているものを達成できるだろう、オブジェクトの同等method.Soをシーンの後ろのassertEquals(expectedObject、actualObject)を呼ぶのです
import static org.hamcrest.collection.IsIterableContainingInAnyOrder.containsInAnyOrder;
import static org.junit.Assert.assertThat;
public class CompareListTest {
@Test
public void compareList() {
List<String> expected = Arrays.asList("String A", "String B");
List<String> actual = Arrays.asList("String B", "String A");
assertThat("List equality without order",
actual, containsInAnyOrder(expected.toArray()));
}
}
0
。
assertEqualの背後にあるロジック。均等法のoveridingせずに2つのオブジェクトをチェックする
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.5</version>
</dependency>
API
EqualsBuilder.reflectionEquals(obj1, obj2)
+0
はい、わかります。そしてequals()を変えずに?任意の "スマート"ライブラリですか? – Pino
+0
@Pinoあなたは[assertj](http://joel-costigliola.github.io/assertj/)を見ることができ、この目的のためにクールなAPIメソッドがたくさんあります。 –
関連する問題
- 1. 2つのXMLファイルを要素と属性の順序に関係なく比較します
- 2. 多くのオブジェクトを含む2つのリストの比較
- 3. ランダムな順序で2つのテキストファイルをJavaと比較する
- 4. 時間に関係なく2つの日付を比較します。
- 5. JUnit:2つの順序付けられていないテキストファイルの内容を比較する
- 6. 2つのデータフレーム間の要素の比較(リストの1つを含む)
- 7. groovyのフィールド値に関係なくjsonを比較します
- 8. NaNを含むリストの比較
- 9. Java:注文に関係なく2つのクラスリストを比較する
- 10. JUnitの2つのオブジェクトリストの比較
- 11. 2つの無関係なテーブルを比較するsql
- 12. javascriptでの配列の比較順序は関係ありません
- 13. すべてのXSDインポートを含む2つのXMLの比較
- 14. IPを含む2つのファイルをPythonと比較する
- 15. Pythonで2つの順序リストを比較するにはどうしたらいいですか?
- 16. Rの2つのベクトルの要素の順序を比較する方法は?
- 17. 2つ以上の列の値を任意の順序で比較する
- 18. 2リスト<String>が同じ要素を任意の順序で含む場合[JUnit - Asset]
- 19. 2つのリストを比較する "List <Category>"カテゴリは私のクラスです
- 20. 2つのリストと、他のリストに含まれていない戻り値を比較します。
- 21. 文字列を含む2つの配列を比較していますか?
- 22. 2つのリストを比較する(Python)
- 23. 関係のある2列を比較します
- 24. 2つの色のリストを比較してください
- 25. Ocamlの2つのリストを比較してください
- 26. 異なるサイズのリストの2つのリストを比較する
- 27. NSFetchedResultsControllerのsectionNameKeyPathに関係なく並べ替え順序を変更します。
- 28. JSは2つの異なる配列のSOME要素の順序を比較します
- 29. LEVENSHTEIN_DISTANCEはリストを比較して順序を無視しません。
- 30. Listプロパティで順序チェックなしのオブジェクトのリストをチェックします。
利用可能utilの
やApacheいいえ、私は2つのリストを比較したくない:私は2つを比較したいですListとその他のプロパティの両方を含むBean。 – Pino
@Pino誤解をおかけして申し訳ありません。あなたの状況をよりよく理解するためにいくつかのコードを追加すれば素晴らしいことでしょう –