[英]Assertj Comparing extracted which are String arrays
以我為例,我需要從兩個不同的系統中請求一組名稱,並驗證它們是否相等(無論順序如何)。 我很可能不了解smth,但是這段代碼可以正常工作:
assertThat(asList(assertThat(firstJSON)
.flatExtracting("innerObject")
.extracting("name")).stream().map(Object::toString).collect(Collectors.toList()))
.containsExactlyElementsOf(
asList(assertThat(secondJSON)
.flatExtracting("innerObject")
.extracting("name")).stream().map(Object::toString).collect(Collectors.toList()));
,但看起來確實很難看,我想要這樣的東西:
assertThat(firstJSON)
.flatExtracting("innerObject")
.extracting("name")
.containsExactlyElementsOf(
assertThat(secondJSON)
.flatExtracting("innerObject")
.extracting("name"));
我已經嘗試過很多函數,例如isSubsetOf()
或containsOnly()
,我也嘗試過在isSubsetOf()
進行強制轉換,但總是會isSubsetOf()
一些異常/錯誤。
我如何比較它們?
在這一點上,我將考慮使用https://github.com/lukas-krecan/JsonUnit代替AssertJ,它提供了不錯的導航功能來斷言JSON數據的各個部分。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.