2015-08-30 13 views
-2

В основном я пытаюсь запустить новый проект и правильно выполнить модульное тестирование со всем этим. Однако я почти полностью отказываюсь от модульного тестирования, поскольку заголовок говорит, что я получаю неудавшееся состояние, даже когда я жестко кодирую AssertEquals (1,1).Junit продолжает терпеть неудачу в Netbeans, даже когда AssertEquals (1,1)

@Test 
public void testGetSeason() { 
    System.out.println("getSeason"); 
    Episode instance = new Episode(1, 1, null); 
    int expResult = 1; 
    int result = instance.getSeason(); 
    assertEquals(1,1); //assertEquals(expResult, result); 
    // TODO review the generated test code and remove the default call to fail. 
    fail(String.format("Episode getSeason Failed: expected %1$s actual %2$s", expResult, result)); 
} 

Итак, кто-нибудь знает, почему 1 = 1 вызывает состояние отказа?

ответ

3

Вы вызываете метод fail(), который сделает ваш тест не выполнен. метод сбоя в основном используется для отказа от проверки, если исключение не было выбрано, вызвав его в блоке try.

+0

Спасибо. Это сработало. Вы думаете, что когда вы получите «сгенерированный» код, он добавит его в оператор try catch. –

2

Вы вызываете fail(), который немедленно приведет к сбою теста. Удалите его, и он будет работать.

Я предполагаю, что вы считаете, что fail() просто выведет сообщение, которое вы предоставили, если утверждение не удалось, и вы не понимали, что он фактически не выполняет сам тест. Для этого вы можете попробовать использовать assertEquals, см. Это для получения более подробной информации: http://junit.sourceforge.net/javadoc/org/junit/Assert.html

+0

Это первый раз, когда я играл с JUnit. Я больше использую библиотеку Unit Testing в C#. –

+0

@BrendanRusso Я отредактировал в альтернативе, которая может помочь сделать то, что вы ищете. Кроме того, ответ такси только загружен на мой мобильный телефон, я не видел его сначала, но то же самое. Он ответил первым, хотя. – Zarwan

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