• SSM框架MavenWeb项目的测试


    由于SSM项目的类都是由Spring容器托管,所以直接进行用new对象调用方法进行测试是不行不通的,会出现空指针异常NullPointExpection.

    因为我们的对象由spring进行托管,调用的类可能存在属性是通过spring自动注入进行赋值的,调用数据库的Mybatis框架也是整合到Spring中的,所以测试之前须先启动Spring容器

    然后再获取Bean对象,能进行之后的测试。

    ServiceTest.java

    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<TMenu> list = service.getMenuList();
            for (TMenu menu : list) {
                System.out.println(menu);
            }
        }
    
    }
    
    

    了解以上过程后,其实我们可以简写为以下代码

    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<TMenu> list = service.getMenuList();
            for (TMenu menu : list) {
                System.out.println(menu);
            }
        }
    
    }
    

    还可以使用Spring提供的注解方式进行测试,参考博文https://www.cnblogs.com/shmebluk/p/13832711.html

  • 相关阅读:
    IndexFlatL2、IndexIVFFlat、IndexIVFPQ三种索引方式示例
    Faiss流程与原理分析
    快速排序(快排)
    SSM框架整合Demo
    基于Logistic回归和sigmoid函数的分类算法推导
    Libsvm java工程实践
    LibSvm流程及java代码测试
    排除文件中空行和注释行内容
    linux三剑客-sed命令使用方法
    文件中添加多行内容方法
  • 原文地址:https://www.cnblogs.com/shmebluk/p/13812512.html
Copyright © 2020-2023  润新知