So wird bestätigt, dass String nicht leer ist

9

Die Behauptung, dass ein string in junit nicht leer ist, kann auf folgende Arten erfolgen:

%Vor%

Meine Frage ist : Gibt es eine bessere Möglichkeit, dies zu überprüfen - etwa so:

assertThat(string, is(not(empty())) ?

    
Armine 20.05.2017, 14:09
quelle

8 Antworten

21

In hamcrest 1.3 können Sie Matchers # isEmptyString : %Vor%

In hamcrest 2.0 können Sie Matchers # emptyString verwenden :

%Vor%     
holi-java 20.05.2017, 17:26
quelle
3

Ich würde assertThat(string, is(not(equalTo("")))) verwenden. Im Gegensatz zu anderen Methoden, bei denen das Ergebnis der Methoden .length() oder .isEmpty() der Zeichenfolge überprüft wird, zeigt dies den Inhalt der Zeichenfolge in der Fehlermeldung an, wenn der Test fehlschlägt.

( Bearbeiten: Eigentlich nicht, würde ich nicht. Ich würde den emptyString() oder isEmptyString() Matcher verwenden, wie in Holi-Javas Antwort . Upvote diese, nicht diese.

    
Wyzard 20.05.2017 14:25
quelle
2

Sie können die eigene assertNotEquals -Assion von JUnit verwenden:

%Vor%     
Stefan Birkner 22.05.2017 09:54
quelle
1

Schreiben Sie Ihre eigene TestHelper-Klasse, in der Sie benutzerdefinierte Methoden für Assertions sammeln können, z. B.

%Vor%     
Matt 20.05.2017 14:13
quelle
1

Was Sie auch tun können, ist eine Bibliothek namens AssertJ , die Ihren Code fließend erklärt. Überprüfung kann mit elegant durchgeführt werden:

assertThat(myString).isNotEmpty();

    
Tomasz Bawor 20.05.2017 14:22
quelle
1

Wenn Sie bereits commons-lang3 verwenden kann dies tun, was auch auf Null und Leerzeichen prüft:

%Vor%

Wie in ihren Javadocs beschrieben:

  

isNotBlank: Überprüft, ob eine CharSequence nicht leer ist (""), nicht null und nicht nur Leerzeichen.

    
Russ Jackson 03.04.2018 20:28
quelle
0

Was Sie bestätigen möchten, ist die Größe Ihrer Zeichenfolge.

%Vor%     
Simulant 20.05.2017 14:17
quelle
0

Wenn Sie spring verwenden, können Sie StringUtils.hasLength(String str) function -from org.springframework.util package verwenden, das die Null-Überprüfung durchführt und die Länge der angegebenen Zeichenfolge überprüft.

    
Abdullah Gürsu 10.09.2017 21:42
quelle

Tags und Links