SSM框架MavenWeb项目的测试
2020-12-29 11:28
标签:ati for 启动 方法 code 容器 lis tis 直接 ServiceTest.java SSM框架MavenWeb项目的测试 标签:ati for 启动 方法 code 容器 lis tis 直接 原文地址:https://www.cnblogs.com/shmebluk/p/13812512.html由于SSM项目的类都是由
Spring
容器托管,所以直接进行用new对象
调用方法进行测试是不行不通的,会出现空指针异常NullPointExpection
.因为我们的对象由
spring
进行托管,调用的类可能存在属性是通过spring
自动注入进行赋值的,调用数据库的Mybatis框架
也是整合到Spring
中的,所以测试之前须先启动Spring容器
。然后再获取
Bean对象
,能进行之后的测试。package com.juyss.test;
import com.juyss.bean.TMenu;
import com.juyss.service.MenuService;
import org.junit.Before;
import org.junit.Test;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import java.util.List;
public class ServiceTest {
private ClassPathXmlApplicationContext context;
@Before //Junit包下的
public void init(){
//作用是初始化Spring容器
context = new ClassPathXmlApplicationContext("classpath:spring/spring-*.xml");
}
@Test //Junit包下的
public void Test(){
//通过容器获取要测试的类的对象
MenuService service = context.getBean(MenuService.class);
//然后再执行要测试的操作
List
了解以上过程后,其实我们可以简写为以下代码
public class ServiceTest {
@Test
public void Test(){
//初始化Spring容器
ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext("classpath:spring/spring-*.xml");
//从容器中获取Bean
MenuService service = context.getBean(MenuService.class);
//在对Bean对象进行操作
List