Hamcrest ist eine Open-Source-Bibliothek von Einschränkungsklassen, die zum Abgleichen von Objekten und Werten verwendet werden, normalerweise von anderen Frameworks wie Unit-Tests, Mocking oder Sammlungen.
Wenn ich mir die Beispiele in der Assert-Klasse JavaDoc ansehe assertThat("Help! Integers don't work", 0, is(1)); // fails: // failure message: // Help! Integers don't work // expected: is <1> // got value: <0> assertThat("Zero is one", 0, is(not(1))) // passes Ich sehe keinen großen Vorteil gegenüber, sagen wir mal …
Ich habe mich gefragt, ob jemand eine Möglichkeit kennt, mit assertThat()und zu überprüfen, ob eine Liste leer ist Matchers. Der beste Weg, den ich sehen konnte, war, JUnit zu verwenden: assertFalse(list.isEmpty()); Aber ich hatte gehofft, dass es in Hamcrest einen Weg gibt, dies zu tun.
Wie würde ich assertThatetwas sein null? beispielsweise assertThat(attr.getValue(), is("")); Aber ich erhalte eine Fehlermeldung, dass ich nicht haben kann nullin is(null).
Ich versuche 2 Listen zu vergleichen: assertThat(actual.getList(), is(Matchers.containsInAnyOrder(expectedList))); Aber Idee java: no suitable method found for assertThat(java.util.List<Agent>,org.hamcrest.Matcher<java.lang.Iterable<? extends model.Agents>>) method org.junit.Assert.<T>assertThat(T,org.hamcrest.Matcher<T>) is not applicable (no instance(s) of type variable(s) T exist so that argument type org.hamcrest.Matcher<java.lang.Iterable<? extends model.Agents>> conforms to formal parameter type org.hamcrest.Matcher<T>) method org.junit.Assert.<T>assertThat(java.lang.String,T,org.hamcrest.Matcher<T>) is not applicable (cannot …
Während des Testens junitin eclipsebekomme ich Folgendes Exception: java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing Ich habe eine junit.jarBibliotheksdatei hinzugefügt . Ich habe verschiedene Versionen von junit.jar versucht: 4.4, 4.8usw. Wie behebe ich diese Ausnahme?
Angenommen, ich möchte eine Methode mit dieser Signatur testen: List<MyItem> getMyItems(); Angenommen, es MyItemhandelt sich um ein Pojo mit vielen Eigenschaften, auf die "name"über zugegriffen werden kann getName(). Ich möchte nur überprüfen, ob die List<MyItem>oder eine Iterableder beiden MyItemInstanzen zwei Instanzen enthält , deren "name"Eigenschaften die Werte "foo"und haben "bar". …
Ich kann nicht verstehen, wie JUnit 4.8 mit Hamcrest-Matchern funktionieren soll. Es gibt einige Matcher innen definiert junit-4.8.jarin org.hamcrest.CoreMatchers. Zur gleichen Zeit gibt es einige andere Matcher hamcrest-all-1.1.jarin org.hamcrest.Matchers. Also, wohin soll es gehen? Soll ich hamcrest JAR explizit in das Projekt aufnehmen und von JUnit bereitgestellte Matcher ignorieren? Insbesondere …
Ich bin relativ neu für Matcher. Ich spiele mit Hamcrest in Kombination mit JUnit herum und es gefällt mir irgendwie. Gibt es eine Möglichkeit, festzustellen, dass eine von mehreren Möglichkeiten richtig ist? Etwas wie assertThat( result, is( either( 1, or( 2, or( 3 ) ) ) ) ) //does not …
Wenn Sie die hamcrest-Bibliothek für Java verwenden, können Sie das Gegenteil von: assertThat(someCollection, hasItem(someItem)) Ich möchte sicherstellen, someCollectiondass kein Artikel enthalten istsomeItem
Es sieht so aus, als ob die Hamcrest- org.hamcrest.MatchersKlasse sehr ähnlich ist org.hamcrest.CoreMatchers(obwohl es so aussieht, als hätte Matcherssie mehr). Warum sollte ich mich für die Verwendung entscheiden CoreMatchers(außer dass die Klasse etwas kleiner aussieht) und warum sind diese beiden Klassen so ähnlich?
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.