2014-09-09 7 views
1

У меня есть класс с именем EmailNotificationContentBuilder. Как следует из названия, класс несет ответственность за создание контента для уведомления по электронной почте, которое будет отправлено после завершения процесса. Уведомление в основном сообщает, был ли процесс успешным или нет, время окончания времени начала и статусы дочерних процессов (в табличном формате). У меня возникли следующие сомнения относительно написания тестовых примеров Junit для этого класса: -Junit тестовые примеры для класса, который генерирует текстовое содержимое

  1. Требуется ли иметь Junit для этого класса? Поскольку он генерирует текстовое содержимое.

  2. Если да, то как я могу утверждать контент, созданный классом? Некоторые из них представлены в табличном формате.

ответ

2
  1. вы хотите, чтобы убедиться, что он делает то, что должен делать делать? Если да, тогда напишите тест. Если вам все равно, работает ли код нормально или нет, не записывайте его.
  2. Это наиболее типичная вещь, которую выполняет единичный тест: проверьте правильность значения, возвращаемого методом. Получить строку он возвращается, и убедитесь, что это то, что вы ожидаете, что это будет:

    @Test 
    public void shouldReturnTabularData() { 
        EmailNotificationContentBuilder builder = new EmailNotificationContentBuilder(); 
        String result = builder.build("some input"); 
        assertEquals("title1\ttitle2\nvalue1\tvalue2", result); 
    } 
    
+0

Что делать, если он использует ApplicationContext читать сообщения от message.properties? Это становится немного сложным. Не могу даже использовать Mockito здесь. – Parikshit

+0

Если вы разместили код, было бы проще объяснить, как его протестировать, или реорганизовать его, чтобы сделать его проверяемым. Без кода мы можем только догадываться. –

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