2014-01-08 4 views
3

Должны ли мы использовать assertEquals или assertTrue для сравнения примитивных типов, специфичных для ints? Есть ли предпочтение, если да, то почему? Я хотел бы знать плюсы и минусы каждого подхода.AssertTrue vs AssertEquals for ints

+0

Попробуйте их оба, какой из двух даст вам более полезное сообщение, если утверждение не удастся? Это будет ваш ответ. – reto

+0

Похож на совершенно правильный вопрос для меня. – ksl

ответ

13

assertEquals() дает полезное сообщение об ошибке при ошибке, например «ожидаемый X, но получил Y», но assertTrue() не может. Используйте здесь более конкретный применимый метод, который равен assertEquals().

2

assertEquals() предназначен для проверки равенства ожидаемого значения с возвращаемым значением. Если assertTrue() проверяет условие. Сказав это, вы также можете сказать

Если у вас есть такое состояние.

String x = "abc"; 
String y = "abc"; 

assertEquals(x, y); 

Вы также можете изменить его на

assertTrue(x.equals(y)); 

Это просто еще один способ утверждать, что вы ожидаете.

Смежные вопросы