断言集合不包含项

2022-08-31 12:36:48

使用Java的hamcrest库,这是一种可读性很好的方式来做相反的事情:

assertThat(someCollection, hasItem(someItem))

我想确保不包含项目someCollectionsomeItem


答案 1

否定断言hasItem

assertThat(someCollection, not(hasItem(someItem)))

答案 2

如果需要断言数组,则使用相同的逻辑not(hasItemInArray())

final String[] availableIds = {"123", "321"};
final String userId = "333";

softAssert.assertThat("Id not found", availableIds, not(hasItemInArray(userId)));
softAssert.assertAll();

推荐