【发布时间】:2020-02-09 01:11:08
【问题描述】:
我有一个应用程序类
@SpringBootApplication
public class Application{
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
我有一个控制器类
@RestController
public class HelloController {
@RequestMapping("/")
public String index() {
return "Greetings from Spring Boot!";
}
}
而且,我想为 Application Test 编写一个测试用例,以确保创建的实例是 HelloController 类型的
@RunWith(SpringRunner.class)
@SpringBootTest
public class ApplicationTest{
@Autowired
private HelloController helloController;
@Test
public void test(){
assertNotNull(helloController);
}
}
但是,我在自动连接 hellocontroller 变量时出错(没有找到 helloController 类型的bean)。根据我的理解,@SpringBootTest 应该创建上下文并返回一个实例。我们不需要编写任何上下文 xml 或使用任何 AnnotationConfig 类来获取实例。缺少什么?
【问题讨论】:
-
发布一个完整的最小示例来重现该问题。它必须具有包声明以及错误的准确和完整的堆栈跟踪。
-
您的应用程序是否运行正常,我的意思是当您启动并点击“/”端点时,它是否有效?
-
至少你可以在堆栈跟踪中添加错误消息
-
这是错误,我在定义变量时遇到了错误。 “无法自动装配。找不到 'HelloController' 类型的 bean”
-
你能显示完整的堆栈跟踪吗?
标签: java spring spring-boot junit