In hamcrest 1.3 können Sie Matchers # isEmptyString : In hamcrest 2.0 können Sie Matchers # emptyString verwenden :
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.
Sie können die eigene assertNotEquals
-Assion von JUnit verwenden:
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();
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.
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.
Tags und Links java unit-testing junit hamcrest