[Spring]简单Junit和Spring整合配置

Spring整合Junit框架 这篇文章给大家详细的介绍了Spring整合Junit框架是如何实现的。并给大家演示了Spring整合Junit4还有Junit5单元测试框架的具体用法,这两种方式在今后的学习和工作中都会使用到,所以各位小伙伴们一定要好好掌握并学会使用 阅读详情

首先采用了maven来部署所需要的jar包依赖

这里需要srping-context.jar,spring-test.jar,junit.jar,log4j.jar

	<dependencies>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-context</artifactId>
			<version>4.2.5.RELEASE</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-test</artifactId>
			<version>4.2.5.RELEASE</version>
		</dependency>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.12</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>log4j</groupId>
			<artifactId>log4j</artifactId>
			<version>1.2.14</version>
		</dependency>

log4j.properties配置 放在classpath下

log4j.rootCategory=INFO, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %t %c{2}:%L - %m%n
log4j.category.org.springframework.beans.factory=DEBUG

新建一个AppConfig类

com.domain里面包括了各种需要的bean,besePackages是一个数组,所以可以提供多个包

@ImportResource 是部分的xml配置,这里由于很大程度上使用了anotation配置,所以xml文件里面并没有什么东西。

@Profile的作用在于如果在开发时进行一些数据库测试,希望链接到一个测试的数据库,以避免对开发数据库的影响。

@Configuration
@ComponentScan(basePackages = "com.domain")
@ImportResource(value = "TestCase_01.xml")
public class AppConfig {
	@Bean(name = "dbService")
	@Profile("dev")
	public DBService mockDBService(){
		return new MockDBService();
	}
	
	@Bean(name = "dbService")
	@Profile("rc")
	public DBService MysqlDBService(){
		return new MysqlDBService();
	}

}


在单元测试类里面

在使用所有注释前必须使用@RunWith(SpringJUnit4ClassRunner.class),让测试运行于Spring测试环境 

@ContextConfiguration是注册配置,这里可以是特定java配置类 也可以配置xml路径

由于需要ApplicationContext 所以添加了一个属性,通过@Autowired让spring容器来自动转配

@ActiveProfiles激活某个测试方案

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = AppConfig.class)
@ActiveProfiles("dev")
public class TestCase_01 {
	@Autowired
	private ApplicationContext ctx;

	@Test
	public void test_case_011() {
		ClientService staticClientService = ctx.getBean("staticClientService", ClientService.class);
		ClientService noneStaticClientService = ctx.getBean("noneStaticClientService", ClientService.class);
		System.out.println(staticClientService);
		System.out.println(noneStaticClientService);
	}

	@Test
	public void test_case012() {
		SimpleMovieLister s01 = ctx.getBean("movieListerWithConstructor", SimpleMovieLister.class);
		SimpleMovieLister s02 = ctx.getBean("movieListerWithProperty", SimpleMovieLister.class);
		assertNotNull(s01);
		assertNotNull(s02);
		assertNotNull(s01.getMovieFinder());
		assertNotNull(s02.getMovieFinder());
	}

	@Test
	public void profileTest() {
		DBService dbService = ctx.getBean(DBService.class);
		assertEquals(3, dbService.count("select * from users"));
	}
}






彻底解决0x80070005错误代码:全面分析与实战指南 0x80070005错误代码虽然令人头疼,但通过上述方法,我们完全有能力将其攻克。从检查磁盘空间、设置账号权限,到运行疑难解答和系统文件检查器,再到调整相关服务状态,每一步都是解决这一问题的关键。希望本文能为你提供有力的帮助,让你在使用Windows系统的过程中更加顺畅无忧。 阅读详情

相关推荐

从MRF8P9040N数据手册到ADS仿真:手把手教你搞定LDMOS功放设计(附完整模型下载)

本文详细解析了MRF8P9040N LDMOS功率放大器的数据手册关键参数,并提供了在ADS中进行仿真的完整指南。从模型导入、直流工作点验证到负载牵引与阻抗匹配设计,逐步指导工程师完成高效功放设计。文章还包含调试技巧和常见问题解决方案,帮助优化射频功放性能。

weixin_27015733的博客 488

Spring第54篇:集成junit,太好用了

本文主要介绍3个内容:1、玩转junit2、spring集成junit3、开发工具中使用junit 然后我们想测试这两个方法,下面我们来写测试代码,如下,测试一下max方法和min方法的结果和我们期望的结果是否一致,不一致的时候,输出一段文字 上面我们要测试的方法就2个,若需测试的方法很多...

chenzoff的专栏 1730

YOLOv8_obb的C++工程部署实战:从模型转换到实时视频推理

本文详细介绍了YOLOv8_obb模型在C++环境下的完整工程部署流程,涵盖从PyTorch模型到ONNX格式的转换、基于ONNX Runtime的C++推理引擎搭建、旋转框后处理解析,以及实时视频流处理与性能优化。文章重点解析了模型转换的关键参数、环境配置的常见问题、核心推理代码的实现,并提供了实用的避坑指南,旨在帮助开发者高效完成YOLOv8_obb的C++工程部署。

weixin_29100927的博客 44

spring与junit的整合

前言 ​ 在我们把spring的上下文配置都配置好后,要想进行测试,代码如下: public class AccoutDaoTest { @Resource(name = "accountDao") private AccountDao accountDao; @Test public void test01() { System.out.println(accountDao);//null } } 输出结果为null? 这是为什么呢,我们不是在

qq_1243443888的博客 1259

2023-11-20 MySQL ARM64 银河麒麟

背景 MySQL是常用数据库,Windows安装比较容易,笔者也有记录。现在国产化系统银河麒麟中安装,不同的是软件安装包不容易下载。一是安装的方式,再一个是MySQL本身的版本,网上很多文档说明其实都是对的,但是为什么那么多都不一样呢?就是MySQL本身的版本差异比较大,这些差异笔者也不是很清楚,但是不要用8和5.7的差异非常大,8即使安装的很顺利,在使用过程也会很多坑,导致我宁愿卸载8,也要重新...

jxmh1991@163.com 808

OTN传送网实战指南:从光层到电层的完整架构解析(附配置示例)

本文深入解析OTN传送网从光层到电层的完整架构,涵盖关键组件、技术实现及配置示例。通过高速公路与光传送网的类比,详细介绍了光层超宽传输管道构建、电层业务调度核心引擎以及控制平面智能运维实战。附有典型组网方案与故障排查指南,助力网络工程师高效部署与维护OTN传送网。

tomato的博客 682

Spring集成junit

首先,我们要了解的是,基本上在利用spring开发的时候基本上每个测试类都会有如下问题 这两行代码又是少不了的,因为一行是加载配置文件(配置类),一行是获得对象,所以这两行都是少不了的,整合junit就是为了解决这个问题 上述问题的解决思路: Spring集成junit步骤: 第一步:导入spring集成Junit坐标 我们先去MAVEN的依赖关系去看一看,发现里面没有spring-test的jar包,因为spring-test就是spirng集成Junit的包 现在我们导入

security_linsho的博客 1044

Unity3D实战:用EasyAR4.0稀疏空间地图打造AR导航应用(附完整代码)

本文详细介绍了如何使用Unity3D和EasyAR4.0的SparseSpatialMap功能构建AR导航应用。通过稀疏空间地图技术,开发者可以创建室内导航系统,解决传统GPS在室内环境中的局限性。文章包含完整代码示例,涵盖环境配置、地图构建、导航实现及性能优化等关键步骤,助力开发者快速掌握AR导航开发技巧。

t8u9v0的博客 1197

Spring集成Junit

spring集成Junit单元测试框架

逐梦苍穹的博客 2155

MT4-EA自动化交易研究笔记(2022-04-22)

自从接触到mt4的EA自动化交易,更让我这个10多年的老程序员看到了曙光,目前来看也确实出了一点成果,只是是否能稳定盈利有待时间的考验,所以开此专栏,一来做做记录与分析,更好的优化我的EA,二来也希望能与更多的高手交流,以完善我的交易系统

t35254056的博客 2290

机器视觉避坑指南:为什么你的Halcon划痕检测总漏检?(附优化方案)

本文深入剖析了Halcon在表面划痕检测中漏检率高的常见原因,如灰度值波动、噪声干扰及形态学参数设置不当。针对复杂背景与低对比度划痕,提出了超越官方例程的多尺度纹理分析与特征融合优化方案,旨在帮助开发者构建更鲁棒、稳定的机器视觉检测流程,有效提升检出率。

weixin_29057163的博客 234

Java框架学习_Spring(四)Spring_AOP相关术语、AOP_xml的配置和简单测试(涉及junit和aop整合进阶)

1、AOP相关术语: 2、AOP的配置和简单测试: 这里先用xml配置的方式,后面再说注解的方法 老规矩:导包 Spring_AOP开发jar包 配置xml(这里已经进行了测试类的配置) &amp;amp;amp;amp;amp;amp;lt;?xml version=&amp;amp;amp;amp;amp;quot;1.0&amp;amp;amp;amp;amp;quot; encoding=&amp;amp;amp;amp;amp;quot;UTF

PizAn的博客 250

Keras中神经网络可视化模块keras.utils.visualize_util安装配置方法

Keras中神经网络可视化模块keras.utils.visualize_util安装配置方法

jacke121的专栏 2759

Spring之整合junit

导入这两个包 <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>5.3.2</version> </dependency&g

小小雨伞的博客 131

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Junit与log4j的整合问题

Junit+spring+log4j整合之所以麻烦,是因为spring与log4j的整合,是放在web.xml里的,随tomcat启动后,spring才会加载log4j,而用junit测试是不需要tomcat启动的,所以Junit与log4j的整合才比较费劲。Junit使用spring时,若spring没加载到log4j就会报以下警告: log4j:WARN No appenders c

zzhao114的博客 2056

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Sprin g整合 JUnit4 测试时,使用 @ContextConfiguration 注解引入多个配置文件

一般情况下: @ContextConfiguration(Locations="../applicationContext.xml") 多个文件时,可用{} @ContextConfiguration(locations = { "classpath*:/spring1.xml", "classpath*:/spring2.xml" }) 依赖 &lt;depe...

HeatDeath的博客 2万+

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

简单的mybatis+spring+junit整合

使用的数据库是:oralce 建立一张TEST表,再建一个ID字段用于简单的测试 需要的包:spring的jar包,mybatis.jar,mybatis-spring.jar,commons-logging.jar,aopalliance.jar,aspectjweaver-1...

weixin_34187862的博客 150

Spring3.1 整合hibernate4 简单设置

首先 hibernate.cfg.xml<?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://www.hibernate.org/dtd

beloveddarling的博客 444

SSM三大框架整合详细教程(SPRING+SPRINGMVC+MYBATIS)

SSM三大框架整合详细教程(SPRING+SPRINGMVC+MYBATIS) 转载自https://www.cnblogs.com/jay36/p/7762448.html 使用SSM(Spring、SpringMVC和Mybatis)已经有三个多月了,项目在技术上已经没有什么难点了,基于现有的技术就可以实现想要的功能,当然肯定有很多可以改进的地方。之前没有记录SSM整合的过程,这次刚刚好基于自己的一个小项目重新搭建了一次,而且比项目搭建的要更好一些。以前解决问题的过程和方法并没...

Florenza的博客 338

Spring、Mybatis、Spring MVC整合实例

Spring、Mybatis、Spring MVC整合实例笔记 源码地址:https://gitee.com/name168/SSM_Demo 1、Maven web项目创建(IDEA) 2、SSM整合 2.1、maven引入需要的jar包 2.2、Spring与MyBatis的整合 2.2.1、创建JDBC链接信息属性文件 2.2.2、创建spring-mybatis.xml配置文...

记录一下🐎👩‍🌾的学习历程 656

spring junit测试 log4j路径修改找不到log4j

Junit+spring+log4j整合之所以麻烦,是因为spring与log4j的整合,是放在web.xml里的,随tomcat启动后,spring才会加载log4j,而用junit测试是不需要tomcat启动的,所以Junit与log4j的整合才比较费劲。Junit使用spring时,若spring没加载到log4j就会报以下警告: log4j:WARN No appenders ...

weixin_30481087的博客 428

Junit与spring TestContext框架整合

所需要的包: junit需要是4.5以上 org.springframework.test-XXX.RELEASE.jar package test; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; i

smile7 940

Junit测试用例配置Log4j

用Junit测试非常方便,但有时我们想要看日志来方便排除,使用spring+log4j时,用Junit测试看日志很多人都不太会,即如何将Junit与log4j进行整合。 我也是研究了半天,才终于找到了方法,特此拿来与大家分享下。 Junit+spring+log4j整合之所以麻烦,是因为spring与log4j的整合,是放在web.xml里的,随tomcat启动后,spring才会加载

AD921012的博客 528

Springboot系列三:整合junit测试

Springboot系列三:整合junit测试

zhengzaifeidelushang的博客 413

Spring(十四)Spring整合junit

偷个懒,以上篇文章为测试 [http://blog.youkuaiyun.com/su20145104009/article/details/54708025] 1.spring整合junit需要导入spring-test的jar包 2.让Junit通知spring加载配置文件 3.让spring容器自动进行注入@RunWith(SpringJUnit4ClassRunner.class)//加载配置

苏苏爱自由 1902
上一篇: [Spring]Annotation-based container configuration_AnotationBasis_03 --JSR 330 Standard Annotations
下一篇: [Spring]使用Spring进行面向切面编程
HeapStackk
博客等级 码龄12年 11粉丝 58原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值