如何为打印“ Hello,World!”的主要方法编写Junit 字符串到控制台并使用Spring Framework

弗拉德·斯塔诺坚科(Vlad Starostenko):

我是Spring的初学者,具有以下代码:

import org.springframework.stereotype.Service;

@Service("helloWorldService")

public class HelloWorldService {

    private String name = "Hello World";

    public String getName() {
        return this.name;
    }
}

/ ** * Hello类来启动此Java应用程序* /

public class Hello {
    private static final Logger LOGGER = Logger.getLogger(Hello.class.getName());

    @SuppressWarnings("resource")

    public static void main(final String[] args) {

        final ApplicationContext context = new ClassPathXmlApplicationContext(
                "applicationContext.xml");

        final HelloWorldService service = (HelloWorldService) context.getBean("helloWorldService");
        final String message = service.getName();
        Hello.LOGGER.info(message);

    }
}

我该如何编写测试?由于如果我使用this.log.getLog(),那么Junit中的实际输出将留空以进行比较。

HL'REB:

我假设问题在于如何验证是否确实将某些值写入日志。如果您使用的是Spring Boot,则可以使用OutputCapture来验证已写入控制台的内容。Spring Boot文档中给出了一个示例

但是,一般而言,您的单元测试应允许对照预期操作验证某些操作的实际结果。该方法getNameHelloWorldService对这种测试一个很好的候选人,因为你可以添加的Junit(或其他框架)断言返回的值等于你所期望的。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何改变在Chrome控制台字符串的颜色?

如何在控制台输出上对齐字符串

如何从Java控制台应用程序中的扫描程序读取字符串?

如何使用Spring Framework将Java控制台应用程序转换为Full Stack Web应用程序?

使用spring和apache tomcat打印控制台日志的最佳方法是什么?[2018]

避免打印到控制台的字符串被截断(在RStudio中)

使用内联脚本时在python中将unicode字符打印到控制台的正确方法

如何使用Robot Framework在控制台输出中添加颜色

如何从核心控制台appSettings.json文件获取字符串数组

如何使COM Hello World从Framework到Framework

如何为JavaScript函数打印原始字符串

当强制转换为PUCHAR并打印到控制台时,硬编码的字符串提供的结果不同于从控制台读取的字符串

如何为dotNET核心控制台应用程序设置Oracle连接字符串?

如何为类属性/元素打印文档字符串?

如何使用.NET通用主机将REST API添加到用.NET Framework 4.8编写的控制台应用程序中?

在任何字符串上使用log()方法,并将字符串打印到控制台

打印字符统计到控制台

混合Java和JSP代码/无法将字符串打印到Javascript控制台

如何为json字符串编写通用的getObject()方法?

如何为输入字符串打印Unicode字形名称?

打印字符串后,xCode控制台输出为空

如何使用查询字符串参数在控制台应用程序中调用 Web Api

swift - 如何在屏幕上的 2 个不同列中打印到控制台多行字符串

爸爸解析无法解析字符串,但可以解析打印到控制台的相同字符串

Yaml 管道。如何使用控制台应用程序交换构建中的连接字符串

如何使用控制台应用程序中的通用主机从 appsettings 中获取连接字符串?

当您控制台记录时,Javascript Date 如何打印出一个字符串?

如何使用简单的“hello world”方法编写自动生成新项目(.sln)的 C# 代码?

JSON 字符串不会打印到控制台