Junit的核心Runner在执行的时候不会创建容器。同时它字节码文件,也改不了

spring整合junit

想办法把junit里面的不能加载容器的main方法换掉。从而实现创建容器。有了容器就可以实现注入

导入spring-test这个包。在pom.xml内配置


Junit包下面有RunWith这么个注解

这里要求的是一个字节码,并且是集成Runner的

所以这里配置的是SpringJUnit4ClassRunner.class

点开。SpringJUnit4ClassRunner 这个类集成了BlockJUnit4ClassRunner

BlockJUnit4ClassRunner又继承了ParentRunner

ParentRunner又继承了Runner

所以最终SpringJUnit4ClassRunner是继承自Runner。这个类是Spring是提供的一定会为我们创建容器,并读取配置文件。
但是前提它需要知道你到底用的是配置文件还是注解。用的配置文件你配置文件放哪了。用的注解。你的注解是谁。
于是就需要第三部

第三步-告知spring容器


@ContextConfiguration里面很多参数

classes表示的是注解的方式创建容器

运行findAll

注意事项


 

找到本地的maven仓库。本地有4.1.2的版本,。

把我们的pom.xml改成4.1.2的版本

再次运行测试方法

我们改回4.1.0的JUnit版本。

我们在运行方法的时候,如果JUnit的版本不支持那么不会体现出现了这个时候我们要运行这个类


只要改成4.1.2及以上就可以了

xml配置的项目

02account_xmlioc

1.导入spring-test的包

然后是JUnit改成4.1.2版本

测试类重复代码删除

然后是定义变量使用Autowired自动注入

@RunWith替换成SpringJUnit4ClassRunner

@ContextConfiguration这个时候不能再用classes了。因为我们是xml配置。用locations配置


配置好执行测试

阶段3 2.Spring_06.Spring的新注解_8 spring整合junit完成的更多相关文章

  1. 阶段3 2.Spring_06.Spring的新注解_5 spring的新注解-PropertySource

    数据库的链接 次数是写死的 新建配置文件 定义成员变量 value注解实现 与配置文件的key对应 PropertySource 要想让spring去读取这个配置文件 resource编译后都跑到了. ...

  2. 阶段3 2.Spring_06.Spring的新注解_2 spring的新注解-Bean

    下面要解决第二部分的配置问题 这两行一出场,就表示可以通过调用构造函数实例化.因为这都是newInstance 上面的需要加上参数,下面的没有任何参数 下面这俩实现的效果不一样. 下面这个除了会创建对 ...

  3. 阶段3 2.Spring_06.Spring的新注解_4 spring的新注解-Import

    把Configuration的直接先注释掉 那么运行测试类的查询所有 并不影响我们的使用 不写同样可以执行的原因是因为这里把SpringConfiguration这个类作为方法传入进去了 新建 Spr ...

  4. 阶段3 2.Spring_06.Spring的新注解_1 spring的新注解-Configuration和ComponentScan

    解决测试类重复代码的问题,xml还是存在的问题,没法脱离xml文件 要想在QueryRunner上加注解,是加不了的 创建工程 复制依赖项到pom.xml 复制注解的工程里面的com文件夹 配置文件b ...

  5. 阶段3 2.Spring_06.Spring的新注解_7 spring整合junit问题分析

    测试类重复代码的问题 这是之前的方式 运行findAll的方法,没有问题 测试人员不需要关心上面的方法,.应该关心的各个方法是否能够正常的运行 对于一个测试工程师,只要写完变量就可以测试了. 可以使用 ...

  6. Spring系列之新注解配置+Spring集成junit+注解注入

    Spring系列之注解配置 Spring是轻代码而重配置的框架,配置比较繁重,影响开发效率,所以注解开发是一种趋势,注解代替xml配置文件可以简化配置,提高开发效率 你本来要写一段很长的代码来构造一个 ...

  7. Spring:基于注解的Spring MVC

    什么是Spring MVC Spring MVC框架是一个MVC框架,通过实现Model-View-Controller模式来很好地将数据.业务与展现进行分离.从这样一个角度来说,Spring MVC ...

  8. Spring自动装配----注解装配----Spring自带的@Autowired注解

    Spring自动装配----注解装配----Spring自带的@Autowired注解 父类 package cn.ychx; public interface Person { public voi ...

  9. Spring+MyBatis纯注解零XML整合(4)

    不得不说,利用XML作为配置文件是一个非常好的想法,它可以轻松地实现配置集中化,而且修改之后无需再次编译.然而,由于大多数情况下开发者基本都会拿到程序的源码,加之对于各种XML配置文件一般情况下也只有 ...

随机推荐

  1. ubuntu搭建gerrit+gitweb代码审核系统

    一.Gerrit的简介 Gerrit是Google开源的一套基于web的代码review工具,它是基于git的版本管理系统.Google开源Gerrit旨在提供一个轻量级框架,用于在代码入库之前对每个 ...

  2. 利用nethogs查看哪些进程占用网络带宽

    一.安装nethogs centos6版本安装: 1.安装依赖包 [root@hlsms-fensheng- ~]# yum install ncurses* 已加载插件:fastestmirror, ...

  3. monkey命令大全

    一.认识monkey Monkey 就是SDK中附带的一个工具.Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中: 它向系统发送伪随机的用户事件流(如按键输入.触摸屏输入 ...

  4. fastjson简单使用demo,@JSONField注解属性字段上与set、get方法上。实体类toString(),实体类转json的区别;_下划线-减号大小写智能匹配

    一.demo代码 @JSONField注解属性字段上与set.get方法上.使用@Data注解(lombok插件安装最下方),对属性“笔名”[pseudonym]手动重写setter/getter方法 ...

  5. CVE漏洞分析

    分析cve-2018-9489漏洞和download content provider(CVE-2018-9468, CVE-2018-9493, CVE-2018-9546), 每人至少选择一个漏洞 ...

  6. tomcat 搭建网站

    基本概念 JDK(Java Development Kit)是Sun Microsystems针对Java开发人员的产品.自从Java推出以来,JDK已经成为使用最广泛的Java SDK.JDK 是整 ...

  7. Linux下Discuz!7.2 LAMP环境搭建

    linux下Discuz LAMP环境搭建 1.需要的源代码 httpd-2.2.15.tar.gz          mysql-5.1.44.tar.gz     php-5.3.2.tar.gz ...

  8. java多线程之生产者消费者模型

    public class ThreadCommunication{ public static void main(String[] args) { Queue q = new Queue();//创 ...

  9. 【转载】Java项目中常用的异常处理情况总结

    一,JDK中与异常相关的类 分析: Java中的异常分类: Throwable类有两个直接子类: Exception:出现的问题是可以被捕获的: Error:系统错误,通常由JVM处理. 可捕获的异常 ...

  10. Acwing-91-最短Hamilton路径(状压DP)

    链接: https://www.acwing.com/problem/content/93/ 题意: 给定一张 n 个点的带权无向图,点从 0~n-1 标号,求起点 0 到终点 n-1 的最短Hami ...