Tengo estos valores provenientes de una prueba.
previousTokenValues[1] = "1378994409108"
currentTokenValues[1] = "1378994416509"
y lo intento
// current timestamp is greater
assertTrue(Long.parseLong(previousTokenValues[1]) > Long.parseLong(currentTokenValues[1]));
Obtengo el java.lang.AssertionErrory la detailMessagedepuración null.
¿Cómo puedo afirmar más que condiciones al usar JUnit

Respuestas:
Cómo lo has hecho.
assertTrue(boolean)también tiene una sobrecargaassertTrue(String, boolean)dondeStringes el mensaje en caso de falla; puede usar eso si desea imprimir que tal y tal no era más grande que tal y tal.También puede agregar
hamcrest-allcomo dependencia para usar comparadores. Consulte https://code.google.com/p/hamcrest/wiki/Tutorial :Eso da un error como:
fuente
OrderingComparisonque contienegreaterThan: hamcrest.org/JavaHamcrest/javadoc/1.3/org/hamcrest/number/…<groupId>org.hamcrest</groupId>,<artifactId>hamcrest-all</artifactId>Cuando utilizo JUnit afirma, siempre hago que el mensaje sea agradable y claro. Ahorra una gran cantidad de tiempo en la depuración. Hacerlo de esta manera evita tener que agregar una dependencia adicional en hamcrest Matchers.
fuente
También puede probar a continuación una solución simple:
fuente
Debe agregar Hamcrest-library a su Build Path. Contiene el Matchers.class necesario que tiene el método lessThan ().
Dependencia como se muestra a continuación.
fuente
esto pasa por valores anteriores> actuales
fuente
Alternativamente, si agregar una biblioteca adicional como
hamcrestno es deseable, la lógica se puede implementar como método de utilidad usandojunitsolo la dependencia:fuente
Como reconozco, en este momento, en JUnit, la sintaxis es así:
Significa que la condición está delante del mensaje.
fuente
Puedes ponerlo así
fuente