如何在springboot中为下面的rest控制器编写有意义的junit
@GetMapping("/api")
public String m2(String process ) {
if( process.equalsIgnoreCase("Y"))
{
jobs.start();
} else if(process.equalsIgnoreCase("N"))
{
jobs.sendEmail();
}
1条答案
按热度按时间disbfnqx1#
在我看来,一个编写良好的单元测试应该简洁,能够覆盖大部分(如果不是全部的话)代码分支,验证副作用,快速、可靠并且易于阅读。
假设您使用的是junit 5和mockito,这样做可以实现以上所有功能:
p、 答:很明显,您可以提高这个单元测试的可读性,因为您比我们任何人都更清楚这个代码在应用程序上下文中的含义。此外,还应该在
m2(String)
返回值(我们无法从代码片段中看到)。如果您想测试api是否已经公开,并且可以通过http进行联系,那么这将是一个端到端的测试,而不是单元测试,我建议不要使用junit,而是使用一些基于这种黑盒测试构建的东西,比如cucumber。