Нуждаюсь в помощи с записью теста

Я пытаюсь записать тест для этого класса его названный Получатель:

public void get(People person) {
            if(null != person) {
               LOG.info("Person with ID " + person.getId() + " received");
               processor.process(person);
             }else{
              LOG.info("Person not received abort!");   
              }
        }

Вот тест:

@Test
    public void testReceivePerson(){
        context.checking(new Expectations() {{          
            receiver.get(person);
            atLeast(1).of(person).getId();
            will(returnValue(String.class));        
        }});
    }

Примечание: получатель является экземпляром класса Получателя (реальный не ложный), процессор является экземпляром класса Процессора (реальный не ложный), который обрабатывает человека (фиктивный объект Людей класс). GetId является Строка не международный метод, который не является ошибкой.

Тестовые сбои: неожиданный вызов person.getId ()

Я использую jMock, любая справка ценилась бы. Поскольку я понял, когда я называю это get метод для выполнения его правильно я должен дразнить person.getId() , и я стрелял из укрытия вокруг в кругах некоторое время теперь, любая справка ценилась бы.

7
задан Sam Holder 26 May 2010 в 11:38
поделиться

2 ответа

Если я правильно понимаю, вы должны переместить строку receiver.get(person); после области действия context.checking - потому что это выполнение вашего теста, а не установка ожиданий. Так что попробуйте вот это:

@Test
public void testReceivePerson(){
    context.checking(new Expectations() {{          
        atLeast(1).of(person).getId();
        will(returnValue(String.class));        
    }});
    receiver.get(person);
}
4
ответ дан 7 December 2019 в 12:15
поделиться

Кроме того, вы должны использовать allow () вместо atLeast (1), поскольку здесь вы заглушаете объект person. Наконец, если Person - это просто тип значения, может быть лучше просто использовать класс.

1
ответ дан 7 December 2019 в 12:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: