JUnit, was assertTrue () oder assertEquals () für String? - Java, Junit

Mein Code ist wie folgt

@Test
public void testMyMethod(){
MyClass mc = new MyClass();
String exeVal="sometext some text";
String x=mc.exampleMethod();

// Assertion type 1
Assert.assertEquals(exeVal,x);
//Assertion Type 2
Assert.assertTrue(exeVal.equals(x));
}

Ich möchte wissen, welches der beste Ansatz ist.

Antworten:

17 für die Antwort № 1

Typ 1 wird aufgrund der Assertion-Nachricht bevorzugt, die Sie erhalten, wenn sie nicht übereinstimmen.

org.junit.ComparisonFailure: expected: <[foo]> but was: <[bar]>

vs

java.lang.AssertionError

Speisekarte