生成文本内容的类的Junit测试用例

生成文本内容的类的Junit测试用例,junit,Junit,我有一个名为EmailNotificationContentBuilder的类。顾名思义,该类负责为进程结束后发送的电子邮件通知生成内容。通知基本上会告知进程是否成功、开始时间和结束时间以及子进程的状态(以表格格式)。对于为这个类编写Junit测试用例,我有以下疑问:- 这个类需要Junit吗?因为它生成文本内容 如果是,那么如何断言该类生成的内容?部分内容以表格形式表示 你想确保它做它应该做的吗?如果是,则编写一个测试。如果您不关心代码是否工作正常,那么就不要编写代码 这是单元测试所做的最典型

我有一个名为EmailNotificationContentBuilder的类。顾名思义,该类负责为进程结束后发送的电子邮件通知生成内容。通知基本上会告知进程是否成功、开始时间和结束时间以及子进程的状态(以表格格式)。对于为这个类编写Junit测试用例,我有以下疑问:-

  • 这个类需要Junit吗?因为它生成文本内容

  • 如果是,那么如何断言该类生成的内容?部分内容以表格形式表示

  • 你想确保它做它应该做的吗?如果是,则编写一个测试。如果您不关心代码是否工作正常,那么就不要编写代码
  • 这是单元测试所做的最典型的事情:测试方法返回的值是否正确。获取它返回的字符串,并检查它是否符合您的预期:

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

  • 如果它使用ApplicationContext从message.properties读取消息怎么办?这有点复杂。这里甚至不能使用Mockito。如果你发布代码,解释如何测试它或重构它使其可测试会更容易。没有代码,我们只能猜测。