Should we use assertEquals or assertTrue for comparing primitive types specifically ints? Is there a preference, if so why ? I'd like to know the pros and cons of each approach.
assertEquals()
gives a useful default error message on failure, like "expected X but got Y", but assertTrue()
can't. Use the more specific applicable method here, which is assertEquals()
.
assertEquals() is to test the equality of your expected value with the returning value. Whereas assertTrue() is to check for a condition. Having said that, you can also say
If you have a condition like.
String x = "abc";
String y = "abc";
assertEquals(x, y);
You can also change it to
assertTrue(x.equals(y));
It is just another way of asserting what you expect.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With