006Spring技巧002测试
部分内容来自以下博客:
https://blog.csdn.net/Ellen5203/article/details/83268630
1 简介
使用RunWith注解可以指定运行类,相当于一个运行器,是Junit提供的。
2 使用
2.1 使用Junit4支持
2.1.1 说明
使用RunWith注解,在引入Junit4后可以使用其提供的一些测试注解。
2.1.2 使用
导包:
1 junit-4.12.jar
测试:
1 @RunWith(JUnit4.class) 2 public class DemoTest { 3 @Before 4 public void before() { 5 System.out.println("before() ..."); 6 } 7 @Test 8 public void test() { 9 System.out.println("test() ..."); 10 } 11 }
2.2 使用Spring支持
2.2.1 说明
使用RunWith注解,引入SpringRunner后可以让类运行在Spring的上下文中,在测试时会自动创建IOC容器。
需要注意的是,引入SpringRunner后还需要使用ContextConfiguration注解指明配置文件或配置类,不然会抛出异常。
2.2.2 加载容器
指明配置文件:
1 @ContextConfiguration(locations = {"classpath:application.xml"}
指明配置类:
1 @ContextConfiguration(classes = DemoConfig.class)
2.2.3 使用
导包:
1 spring-test-5.3.3.jar
测试:
1 @RunWith(SpringRunner.class) 2 @ContextConfiguration(classes = DemoConfig.class) 3 public class DemoTest { 4 @Autowired 5 private Calculator calculator; 6 @Test 7 public void test() { 8 // AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(DemoConfig.class); 9 // Calculator calculator = context.getBean(Calculator.class); 10 calculator.add(1, 3); 11 } 12 }
2.3 使用Junit4和Spring支持
2.3.1 说明
使用RunWith注解,引入SpringJUnit4ClassRunner后可以让类运行在Spring的上下文中,并且同时可以使用Junit4测试工具类。
同样,引入SpringJUnit4ClassRunner后也需要使用ContextConfiguration注解指明配置文件或配置类,不然会抛出异常。
在IDEA中,如果不添加额外选项,默认使用JUnit4测试工具来进行测试,即SpringRunner的效果和SpringJUnit4ClassRunner是一样的。
2.3.2 使用
导包:
1 spring-test-5.3.3.jar
测试:
1 @RunWith(SpringJUnit4ClassRunner.class) 2 @ContextConfiguration(classes = DemoConfig.class) 3 public class DemoTest { 4 @Autowired 5 private Calculator calculator; 6 @Before 7 public void before() { 8 System.out.println("before() ..."); 9 } 10 @Test 11 public void test() { 12 // AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(DemoConfig.class); 13 // Calculator calculator = context.getBean(Calculator.class); 14 calculator.add(1, 3); 15 } 16 }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· winform 绘制太阳,地球,月球 运作规律
· 上周热点回顾(3.3-3.9)
2019-01-25 004Java常用类002字符串类