Mit der Hamcrest-Bibliothek für Java können Sie auf gut lesbare Weise das Gegenteil von tun:
assertThat(someCollection, hasItem(someItem))
Ich möchte sichergehen someCollection
enthält keinen Artikel someItem
Mit der Hamcrest-Bibliothek für Java können Sie auf gut lesbare Weise das Gegenteil von tun:
assertThat(someCollection, hasItem(someItem))
Ich möchte sichergehen someCollection
enthält keinen Artikel someItem
siehe
Negieren Sie die hasItem
Behauptung
assertThat(someCollection, not(hasItem(someItem)))
Nachdem ich das Paket IsNot importiert habe (import static org.hamcrest.core.IsNot.not
) hat gut geklappt.
– Harschware
20. Februar 2012 um 3:32 Uhr
Das Matcherzs
definiert alles. Factory-Methoden, damit Sie eine haben können *
statischer Import. Ich werde es in einer Arbeit nachschlagen, wenn niemand sonst die Zeile in der nächsten Stunde postet.
– David Harkness
20. Februar 2012 um 17:58 Uhr
@harschware – Von der Basisanleitung, import static org.hamcrest.MatcherAssert.assertThat;
und import static org.hamcrest.Matchers.*;
– David Harkness
20. Februar 2012 um 18:19 Uhr
In Hamcrest Version 1.3-asserThat(someCollection, not(hasItem(someItem))) hat nicht funktioniert, also habe ich assertThat(someCollection, not(contains(someItem))) verwendet.
– Nik
19. Juli 2021 um 12:16 Uhr
Saschko
Wenn Sie ein Array bestätigen müssen, verwenden Sie dieselbe Logik not(hasItemInArray())
final String[] availableIds = {"123", "321"};
final String userId = "333";
softAssert.assertThat("Id not found", availableIds, not(hasItemInArray(userId)));
softAssert.assertAll();
oder Sie können tun;
.extract().jsonPath().getObject("data", pojo.class);
(above is response)
assertThat(response, not(hasItem(bodyYouArePosting)));