Я сделал метод для подсчета появления заданного символа в строке.
public Integer numberOf(String str, Character a){}
Я попытался проверить как обычно, используя:
@Test
public void test1(){
Integer result = oc.numberOf("Lungimirante", 'u');
Assert.assertEquals(1, result);
}
но Eclipse жалуется на это.
Я погуглил и обнаружил, что для проверки мне нужно использовать:
assertEquals(1, result); //it works correctly
вместо: Assert.assertEquals(1, result);
Не могли бы вы объяснить мне, почему? В чем разница?
assert[Equals,etc.]
происходят из статического импорта классаjunit.framework.Assert
(илиorg.junit.Assert
и т. д.). Скорее всего, у вас есть операторimport static junit.framework.Assert.*
или аналогичный, но на самом деле вы не импортировалиjunit.framework.Assert
. - person Mena   schedule 26.09.2017assertEquals
я импортировал:import static org.junit.Assert.assertEquals;
и до использованияAssert.assertEquals
только импортorg.junit.Assert;
- person SwampThing   schedule 26.09.2017NullPointerExceptions
там, где вы их не ожидаете, — это другое. Из-за этого я настроил Eclipse так, чтобы случаи автобоксинга отображались как ошибки (и ИМХО это говорит само за себя, что для этого есть вариант, что я не так уж ошибаюсь в своем мнении) - person Lothar   schedule 26.09.2017