Spring版本2.5.5,JUnit 版本 4.8.1,使用了Spring TestContext 的 SpringJUnit4ClassRunner。一直使用这个版本的JUnit,在写简单的测试时不会抛错,直到今天开始尝试写规范的JUnit测试代码,抛出了如下的错误:
java.lang.NoClassDefFoundError: org/junit/Assume$AssumptionViolatedException
at org.springframework.test.context.junit4.SpringMethodRoadie.runTestMethod( SpringMethodRoadie.java:240)
at org.springframework.test.context.junit4.SpringMethodRoadie$RunBeforesThenTestThenAfters.run( SpringMethodRoadie.java:333)
...
Caused by: java.lang.ClassNotFoundException: org.junit.Assume$AssumptionViolatedException
at java.net.URLClassLoader$1.run( URLClassLoader.java:202 )
at java.security.AccessController.doPrivileged( Native Method )
at java.net.URLClassLoader.findClass( URLClassLoader.java:190 )
... 17 more
找了下网上的资料[1,2],这属于 Spring 与 JUnit 版本不兼容导致的。解决方法:
修改JUnit 的版本至 4.4
---------------------------------------------------------------------------------------
[1]http://forum.springsource.org/showthread.php?60230-spring-test-breaks-in-Junit-4-5
[2]https://jira.springsource.org/browse/SPR-5145
分享到:
相关推荐
spring-test-junit5, JUnit ( a )的spring TestContext框架扩展( a ) spring 5测试支持这个项目作为 5的正式 Prototype,在 spring TestContext框架测试支持,并与 SPR-13575结合到 Spring Framework 。 因此,在...
总结,Spring 2.5 TestContext测试框架为开发者提供了一套完整的测试解决方案,包括上下文配置、依赖注入、事务管理和mock对象。通过合理利用这些特性,我们可以编写出高效、易于维护的测试代码,确保应用程序的质量...
4. **SpringJUnit4ClassRunner**与**SpringRunner**:这些测试运行器使得JUnit测试类可以利用Spring的特性,如自动注入、事务管理等。 5. **@Before/AfterTransaction**:这些注解允许在测试前后进行事务操作,确保...
- `@RunWith(SpringJUnit4ClassRunner.class)`:这是JUnit测试类必须的注解,它告诉JUnit使用Spring提供的测试运行器来执行测试。 - `@ContextConfiguration`:用于指定配置文件的位置或加载ApplicationContext的...
4. **运行测试**:通过命令行或者IDE运行Ant任务,Ant会执行JUnit测试,并将结果输出到指定的目录下。 5. **查看测试报告**:Ant可以生成JUnit测试报告,通常为HTML格式,这样我们就可以直观地看到每个测试用例的...
What’s New in Spring Framework 4.x .................................................................................... 16 3. New Features and Enhancements in Spring Framework 4.0 .....................
JUnit是Java中最常用的单元测试框架,它提供了编写和运行可重复测试的便利工具。在Spring MVC中,我们可以利用Spring的TestContext框架和MockMVC库来模拟HTTP请求,对Controller进行隔离测试。 进行Spring MVC ...
What’s New in Spring Framework 4.x .................................................................................... 16 3. New Features and Enhancements in Spring Framework 4.0 .....................
标题中的“Spring与JUnit整合”指的是在Java开发中将Spring框架和JUnit测试框架结合使用,以便进行高效且全面的单元测试。Spring是一个广泛使用的开源框架,它提供了依赖注入(DI)和面向切面编程(AOP)等功能,...
2. `@RunWith(SpringRunner.class)`:这是一个JUnit runner,它使得Spring TestContext Framework可以驱动测试执行。 3. `@SpringBootTest`:这个注解用于启动一个Spring应用上下文,可以指定配置类、web环境等。 ...
Spring TestContext Framework是spring-test模块中提供的一个测试框架,能够用于单元测试和集成测试。
- **@RunWith(SpringJUnit4ClassRunner.class)**:这个注解将JUnit测试类与Spring TestContext框架关联起来,使Spring能够管理测试环境。 - **@ContextConfiguration**:此注解用于指定测试所需的配置文件,Spring...
在Spring框架中,进行Web工程的JUnit单元测试是软件开发中的关键步骤,它能确保代码的质量和可维护性。本文将深入探讨如何利用Spring管理的Web工程进行单元测试,以及如何借助工具提升测试效率。 首先,理解“通过...
spring4 开发jar包 Introduction The Spring Framework provides a comprehensive programming and configuration model for modern Java-based enterprise applications - on any kind of deployment platform. A ...
6. **spring-test-4.3.4.RELEASE.jar**:提供了对Spring应用进行单元测试和集成测试的支持,包括TestContext框架、Mock对象和JUnit集成。 7. **jstl-1.2-sources.jar**:JavaServer Pages Standard Tag Library,是...
9.9. 常见问题的解决方法 9.9.1. 对一个特定的 DataSource 使用了错误的事务管理器 9.10. 更多的资源 10. DAO支持 10.1. 简介 10.2. 一致的异常层次 10.3. 一致的DAO支持抽象类 11. 使用JDBC进行数据访问 ...
9.9. 常见问题的解决方法 9.9.1. 对一个特定的 DataSource 使用了错误的事务管理器 9.10. 更多的资源 10. DAO支持 10.1. 简介 10.2. 一致的异常层次 10.3. 一致的DAO支持抽象类 11. 使用JDBC进行数据访问 ...
Spring框架提供了一整套测试支持,包括`@RunWith(SpringRunner.class)`注解,它允许我们使用Spring TestContext Framework运行JUnit测试。这个框架能够自动加载应用上下文,使得在测试中可以方便地注入依赖,模拟或...
《深入剖析Spring Framework 3.2.6源码:揭示Java技术之精髓》 Spring Framework作为Java领域最为广泛应用的轻量级框架之一,其3.2.6版本的源码对于开发者来说是一份宝贵的资源。它揭示了Spring如何通过IoC...