Always terminate calls to
verify() with a relevant assertion call, such as
equals(), or similar.
Assertion frameworks such as Assert4J and Truth have fluent APIs, where assertions are represented as chained method calls.
While the fluent style is very convenient and can improve the developer experience, it is also easy to make a mistake by starting an assertion chain, but forgetting to end it.
This would make the assertion useless.
What's worse is that such an incomplete assertion will not fail your tests, lulling you into a false sense of security.
This issue is reported for any test frameworks such as Assert4J or Mockito which support fluent assertions through methods such as
assertThat(someValue); // This assertion is incomplete. // for mockito verify(someMethod);
This issue will not be reported if the call is used within an expression, such as by returning it or passing it to a different function.