您的位置:首页 > 编程语言 > Java开发

spring JUnit 基本原理

2016-01-29 13:44 423 查看
Spring test framework 主要位于 org.Springframework.test.context 包中,主要包括下面几个类:



TestContextManager:主要的入口类,提供 TestContext 实例的管理,负责根据各种事件来通知测试监听器

TestContext:实体类,提供访问 Spring applicatoin context 的能力,并负责缓存applicationContext

TestExecutionListener:测试监听器,提供依赖注入、applicationContext 缓存和事务管理等能力

ContextLoader:负责根据配置加载 Spring 的 bean 定义,以构建 applicationContext 实例对象

SmartContextLoader:Spring 3.1 引入的新加载方法,支持按照 profile 加载

Spring 通过 AOP hook 了测试类的实例创建、beforeClass、before、after、afterClass 等事件入口,执行顺序主要如下:



测试执行者开始执行测试类,这个时候 Spring 获取消息,自动创建 TestContextManager 实例

TestContextManager 会创建 TestContext,以记录当前测试的上下文信息,TestContext 则通过ContextLoader 来获取 Spring ApplicationContext 实例

当测试执行者开始执行测试类的 BeforeClass、Before、After、AfterClass

的时候,TestContextManager 将截获事件,发通知给对应的 TestExecutionListener

转载自:使用 Spring 进行单元测试
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  junit 框架 spring 测试