Assertj +使用元组时,对于一个字段如何检查它,请从多个值中检查它是否匹配

时间:2018-12-01 00:05:06

标签: assertj

我有一个对象响应列表,想测试每个对象块是否匹配。因此使用元组。

softAssertions.assertThat(resultArrayList)
                                  .extracting("title", "countryCode")
                                  .as("Title, CountryCode")
                                  .containsAnyOf(
                                          new Tuple(placeToSearch, expectedCountry));

因此,在上面的查询中,我需要检查字段Title的多个值,例如anyOf(placeToSearch,placeToSearch1)。请建议

1 个答案:

答案 0 :(得分:0)

如果我正确理解了您想要什么,一种选择是提供所有可能的元组组合。

softAssertions.assertThat(resultArrayList)
                              .extracting("title", "countryCode")
                              .as("Title, CountryCode")
                              .containsAnyOf(
                                      tuple(placeToSearchA, expectedCountry),
                                      tuple(placeToSearchB, expectedCountry),
                                      tuple(placeToSearch1, expectedCountry2),
                                      tuple(placeToSearch2, expectedCountry2)
                              );

请注意,您静态导入Assertions.tuple来创建Tuple,并保持代码的美观和可读性。