Assertion-Sammlung enthält kein Element

Lesezeit: 1 Minute

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

Benutzer-Avatar
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


Benutzer-Avatar
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)));

1216510cookie-checkAssertion-Sammlung enthält kein Element

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy