文档章节

Spring测试框架springContextTest

liuhuics10
 liuhuics10
发布于 2015/12/09 11:18
字数 280
阅读 515
收藏 1

    ssh版本:spring4.2/struts2.3/hibernate4;除了一些必要的jar包外,使用spring自带的测试框架,还要额外导入spring-test-4.2.2.jar。

junit使用的是junit4.7,相关测试代码如下:

package TestContext;

import java.util.List;

import javax.annotation.Resource;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.AbstractTransactionalJUnit4SpringContextTests;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.transaction.annotation.Transactional;

import entity.User;
import service.UserService;

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:beans.xml")
@Transactional
public class ListActionTest extends AbstractTransactionalJUnit4SpringContextTests{
	
	
	private UserService userService;
	

	public UserService getUserService() {
		return userService;
	}


	@Resource
	public void setUserService(UserService userService) {
		this.userService = userService;
	}


	//@Rollback(true)默认true 
	@Test
	public void test(){
		User user = userService.getUser(50);
		System.out.println(user.getUname());
		
		List<User> users = userService.getUsers();
		System.out.println(users.size());
	}
	
}

run as junit Test时报错:

java.lang.ExceptionInInitializerError
     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
     at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
     at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
     at java.lang.reflect.Constructor.newInstance(Unknown Source)
     at org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:31)
     at org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:24)
     at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:57)
     at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:29)
     at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:57)
     at org.junit.internal.requests.ClassRequest.getRunner(ClassRequest.java:24)
     at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.createUnfilteredTest(JUnit4TestLoader.java:84)
     at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.createTest(JUnit4TestLoader.java:70)
     at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.loadTests(JUnit4TestLoader.java:43)
     at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:444)
     at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
     at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
     at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
Caused by: java.lang.IllegalStateException: Failed to find class [org.junit.runners.model.MultipleFailureException]: SpringJUnit4ClassRunner requires JUnit 4.9 or higher.
     at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.<clinit>(SpringJUnit4ClassRunner.java:102)
     ... 17 more

报错信息里提到:

SpringJUnit4ClassRunner requires JUnit 4.9 or higher

后来换成junit-4.12.jar,运行报错:

java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing

原来 Since JUnit 4.11 the junit.jar itself has no Hamcrest classes,后来导入harmcrest-core-1.3.jar,继续运行,ok!

© 著作权归作者所有

共有 人打赏支持
liuhuics10
粉丝 4
博文 97
码字总数 39010
作品 0
烟台
私信 提问
sping3+hibernate4框架模板

本框架以商品购物平台项目为例,用到spring3mvc和hibernate4,主要搭建步骤如下: 1、spring3MVC模板 2、集成hiebernate4模板 3、Spring集成测试模板 包含的技术: spring框架; springMVC技术...

java-苦苦甜甜
2012/10/19
0
0
Spring(一)——总体介绍

工作闲着,快速回顾一下spring框架。Spring框架,是进行对象管理,对象关联,解耦的一个中间层框架。SSH(Struts+Spring+Hibernate)三大Spring在中间就起着一个承上启下的作用。好,首先我们...

凡尘里的一根葱
2015/11/10
0
0
新书上架:《Spring Boot 开发实战》(基于 Kotlin + Gradle + Spring Boot 2.0 的企业级服务端开发实战)

新书上架:《Spring Boot 开发实战》 — 基于 Kotlin + Gradle + Spring Boot 2.0 的企业级服务端开发实战 京东下单链接 https://item.jd.com/31178320122.html 天猫下单链接 https://detail...

程序员诗人
08/05
0
0
2014-03-09 Spring的学习(0)-----Spring目录文件组织

Spring压缩包目录说明 目录名 相关介绍 aspectj 在Spring框架下使用aspectj的源代码和测试程序文, 是java最早的提供AOP的应用框架 dist Spring 的发布包,关于发布包下面会详细进行说明。 do...

查封炉台
2014/03/09
0
0
SSM框架——详细整合教程(Spring+SpringMVC+MyBatis)

使用SSM(Spring、SpringMVC和Mybatis)已经有三个多月了,项目在技术上已经没有什么难点了,基于现有的技术就可以实现想要的功能,当然肯定有很多可以改进的地方。之前没有记录SSM整合的过程...

Carl_
2015/07/17
0
3

没有更多内容

加载失败,请刷新页面

加载更多

websocket 接口简单测试工具,webcoket实用测试工具

chorme 插件 Simple WebSocket Client 对开发来说够用了,能连互联网,也能连本地的。

SimonAt
3分钟前
0
0
Ext中 get、getDom、getCmp的区别

getDom方法能够得到文档中的DOM节点,该方法中包含一个参数,该参数可以是DOM节点的id、DOM节点对象或DOM节点对应的Ext元素(Element)等。 (与getElementById是一个效果) •Ext.onReady(funct...

休辞醉倒
10分钟前
0
0
springboot jpa 访问数据库

spring boot(五):spring data jpa的使用 SpringBoot非官方教程 | 第三篇:SpringBoot用JdbcTemplates访问Mysql

颖辉小居
25分钟前
4
0
Quartz + Oracle 分布式Job实现

简述 实现 依赖包 <dependency><groupId>org.quartz-scheduler</groupId><artifactId>quartz</artifactId><version>2.2.3</version><exclusions><exclusion><groupId>com.zax......

呼呼南风
31分钟前
5
0
崛起于Springboot2.X之集成规则引擎Drools(41)

1、创建Springboot项目,勾选Web模块和lombok插件 2、添加pom其他依赖 <dependency> <groupId>org.kie</groupId> <artifactId>kie-spring</artifactId> <version>7.11.0.Fin......

木九天
39分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部