`
ezscript
  • 浏览: 34008 次
  • 性别: Icon_minigender_1
  • 来自: 宁波
社区版块
存档分类
最新评论

spring测试的2种方式

    博客分类:
  • java
阅读更多
环境:spring 3.0.5 , junit 4.8.1

1 使用junit
import java.util.List;

import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.test.context.transaction.TransactionConfiguration;
import org.springframework.transaction.annotation.Transactional;

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations={"classpath:/applicationContext.xml","classpath:/applicationContext*.xml","classpath:/com/test/spring/hibernate.xml"})
@TransactionConfiguration(transactionManager="transactionManager",defaultRollback=true)
@Transactional 
public class BaseDAOTestCaseJunit {

	@Autowired
	YourDAO yourDAO; //这个换成要测试的DAO

	@Autowired
	YourDAO2 yourDAO2; //第2个DAO
	
	@Before
	public void init(){
		System.out.println("init...");
	} 
	//
	@Test
	public void getList(){ //junit的test方法
		List l = yourDAO.yourMethod();
		for(int i = 0 ; i< l.size(); i++){
			System.out.println(l.get(i));
		}
	} 
	
}



2 直接在main函数中调用spring
import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.stereotype.Service;
import org.springframework.test.context.transaction.TransactionConfiguration;
import org.springframework.transaction.annotation.Transactional;


/**
 * SpringTest
 * 就是把这个类注册成service,然后获取该类,调用方法。所以建个普通类,直接掉其他service也可以
 * @author MaXin
 *
 */
@Service("testSpring")
@Transactional
@TransactionConfiguration(transactionManager="transactionManager",defaultRollback=true)
public class TestSpring {

	@Autowired
	YourDAO YourDAO; //这个换成要测试的DAO

	@Autowired
	YourDAO2 yourDAO2; //第2个DAO
	
	//
	public void getList(){
		List l  = YourDAO.yourMethod(); //调用具体DAO的方法
		for(int i = 0 ; i< l.size(); i++){
			System.out.println(l.get(i));
		}
	} 
	
	public static void main(String [] args){
		String[] configLocations = { "classpath*:/com/test/spring/hibernate.xml",
			"classpath*:applicationContext.xml","classpath*:applicationContext*.xml" };
		ApplicationContext ctx = new ClassPathXmlApplicationContext(configLocations);
		TestSpring  one = (TestSpring) ctx.getBean("testSpring");
		one.getList();
	}
	
	
	
}



要是想点一下,把所有的东西都测试了,那就用junit吧。
不过要是遇到,不方便开web程序的,并且刚写完DAO,想试试性能的,就用第2种吧,很方便。
关于spring注解:http://www.iteye.com/topic/295348
这里就强调一下:
<!--使用以下标签,让spring知道在哪找注解 
xmlns:context="http://www.springframework.org/schema/context" 
-->
<context:component-scan base-package="com.test"/>


Cron expressions:http://www.quartz-scheduler.org/documentation/quartz-1.x/tutorials/crontrigger
分享到:
评论

相关推荐

    spring测试示例代码

    本示例代码聚焦于使用JUnit进行Spring测试,这是一项核心的Java测试框架,广泛用于编写可重复的、独立的单元测试。 首先,让我们深入理解Spring测试的基本概念。Spring测试支持主要由`spring-test`模块提供,它包含...

    spring依赖注入三种方式 测试源码

    在Spring框架中,依赖注入(Dependency Injection,简称DI)是一种重要的设计模式,它使得对象之间的耦合度降低,提高了代码的可测试性和可维护性。本文将深入探讨Spring中的三种依赖注入方式,并结合源码分析其工作...

    spring单元测试包

    spring单元测试包spring单元测试包spring单元测试包spring单元测试包spring单元测试包

    SSH(struts2,Hibernate,Spring)整合及测试亲测可用

    SSH,即Struts2、Hibernate和Spring的组合,是Java Web开发中的一种经典框架集成,用于构建企业级的MVC(Model-View-Controller)应用。这个整合旨在提供一个高效、灵活且可扩展的开发环境,使开发者可以专注于业务...

    Spring 测试jar

    在进行Spring测试时,开发者通常会使用`@RunWith(SpringRunner.class)`来启用Spring的测试支持,然后通过`@SpringBootTest`或更具体的测试注解来指定测试范围。`@Autowired`注解可以帮助注入需要的bean,而`@Mock...

    spring整合单元测试Junit开发包

    2. **ApplicationContext**: `spring-test`提供了`@ContextConfiguration`注解,允许你在测试类上声明配置文件的位置,这样就可以在测试环境中加载Spring应用程序上下文。 3. **TestNG集成**: 虽然Junit是默认的...

    spring-demo15-测试.zip

    1. **Spring测试模块** Spring框架提供了内置的测试支持,包括`spring-test`模块,它为Spring应用提供了全面的测试工具。这个模块包含了JUnit和Mockito等测试库的整合,使得开发者能够方便地编写针对Spring组件的...

    spring 的简单小测试

    例如,使用`@RunWith(SpringRunner.class)`注解启动Spring测试环境,`@SpringBootTest`注解可以加载整个Spring应用上下文,`@MockBean`或`@SpyBean`则可以帮助我们创建模拟对象进行隔离测试。 在“spring 1”这个...

    Spring Cloud Contract 测试学习

    2. **Spring Cloud Contract的优势** - **解耦测试**:服务提供者不再依赖服务消费者的具体实现进行测试,反之亦然。 - **自动化验证**:SCC自动生成测试用例,减少了手动编写测试代码的工作量。 - **增强沟通**...

    spring测试jar

    "spring测试jar"指的是包含这些测试支持的 JAR 文件,通常包括 `spring-test` 和 `junit` 相关的库。 1. **Spring Test**:这是 Spring 框架的一个模块,提供了一组工具和类,帮助开发者编写和运行针对 Spring 应用...

    Spring_单元测试_2种写法

    Spring单元测试2种写法 在软件开发中,单元测试是一种非常重要的测试方法,它可以确保代码的质量和可靠性。Spring框架作为一个流行的Java Web开发框架,也提供了单元测试的支持。本文将介绍Spring单元测试的2种写法...

    spring测试jar包

    Spring测试jar包是针对Spring框架开发的一个重要工具,主要用于帮助开发者在Spring环境下对代码进行单元测试、集成测试以及端到端测试。这个jar包包含了所有必要的类和库,使得测试过程更加便捷和高效。 首先,...

    Spring实现AOP的4种方式

    本篇文章将详细探讨Spring实现AOP的四种主要方法:基于代理的方式、基于AspectJ的注解方式、基于XML的AOP配置以及基于Java的AOP配置。 1. 基于代理的实现 Spring的AOP支持两种代理类型:JDK动态代理和CGLIB代理。...

    最小配置Spring-测试

    最小配置Spring-测试

    Spring测试框架.rar

    Spring测试框架是Spring生态系统中的重要组成部分,它为开发者提供了对Spring应用进行单元测试、集成测试以及端到端测试的强大支持。这个压缩包“Spring测试框架.rar”包含了与使用Spring 2.5 TestContext测试框架...

    Spring中进行集成测试

    2. **测试配置**:在Spring测试中,你可以使用`@ContextConfiguration`注解来指定配置文件或带有`@Configuration`注解的类,这些配置将在测试中加载。这使得测试环境可以根据需求配置,比如使用不同的数据源或不同的...

    Spring整合Junit框架进行单元测试Demo

    Spring是一个开源的、全面的企业级应用框架,它简化了开发复杂应用的过程,而JUnit则是一个流行的单元测试框架,用于确保代码的质量和可靠性。当我们需要对Spring框架中的组件进行单元测试时,通常会将JUnit与Spring...

    07. Spring Boot单元测试

    在Spring Boot中,我们通常使用JUnit作为测试框架,它提供了一种声明式的方式来定义和执行测试。同时,Spring Boot提供了`@SpringBootTest`注解,用于启动一个完整的Spring应用上下文,这样可以在测试中使用到Spring...

    spring websocket 测试项目

    这个"spring websocket 测试项目"是为了帮助开发者理解和实践如何在实际应用中集成和使用WebSocket。 首先,我们要了解Spring WebSocket的基础架构。它基于STOMP(Simple Text Oriented Message Protocol)协议,这...

Global site tag (gtag.js) - Google Analytics