测试对象是Web项目的Service类,参照网上查到的资料,按如下方式执行时报错,

//使用junit4进行单元测试
@RunWith(SpringJUnit4ClassRunner.class)
//加载配置文件,可以指定多个配置文件,locations指定的是一个数组
@ContextConfiguration(locations={"classpath:spring/applicationContext-*.xml", "classpath:spring/springmvc.xml"})
//启动事务控制
@Transactional
//配置事务管理器,同时指定自动回滚
@TransactionConfiguration(transactionManager="transactionManager", defaultRollback=true)
public class BaseJunit4Test {
//进行测试时,将测试类继承该类
//注入service对象
//然后在方法上使用@Test,@RollBack,@Transaction等注解单独修饰
}

执行后报错如下:

  Caused by java.lang.IllegalStateException:WebApplicationObjectSupport instance[ResourceHttpRequestHandler [locations=[class path resource [assert/]],resolvers=[org.springframework.web.servlet.resource.PathResourceResolver@...]]] does not run in a WebApplicationContext but in : org.springframework.context.support.GenericAppliactionContext............

网上找到了类似的问题,说是在配置文件中将assert相关的静态资源目录去掉就可以了。感觉不靠谱,因为工程在tomcat中启动是没有什么问题的。

刚开始用Junit,不太熟悉,后来想,可能是Junit配置没有支持Web工程。然后又搜索怎么对Controller层进行单元测试的,结果发现了测试类上面的@WebAppConfiguration注解。猜想正是因为少了这个注解的问题。

于是在测试代码中加上了这个注解,就不报错了。

Junit很强大,还是要好好学习一下的。

遇到问题,在此Mark一下。这是我的错题集。

Spring Web 项目Junit测试报错问题的更多相关文章

  1. Spring项目JUnit测试报错ClassNotFoundException解决

    Eclipse项目上有红色感叹号,各包显示正常.用JUnit测试部分能运行,部分报错,报错如下: Class not found UserTestjava.lang.ClassNotFoundExce ...

  2. maven web 项目中启动报错 Java.lang.ClassNotFoundException: org.springframework.web.servlet.DispatcherServlet

    主要原因是maven项目里面的jar包吗,没有导入到项目中 maven web 项目中启动报错 Java.lang.ClassNotFoundException: org.springframewor ...

  3. eclipse的web项目导入IDE报错

    问题:eclipse的web项目导入IDE报错 第一个问题: 解决:点击enable即可 第二个问题: 解决: 解决方法: 切换文件的编码 : from UTF-8 to GBK to UTF-8 参 ...

  4. junit 测试报错 java.lang.Exception: No runnable methods

    转自:http://blog.csdn.net/snails_zx/article/details/51275894 在maven 项目中  建立测试类时,基类只用作加载spring配置文件,里面没有 ...

  5. maven web 项目中启动报错java.lang.ClassNotFoundException: org.springframework.web.util.Log4jConfigListener

    环境:Groovy/Grails Tool Suite 3.1.0.RELEASE(BASED ON ECLIPSE JUNO 3.8.1).JDK1.6.Maven3.05.Tomcat6 错误描述 ...

  6. java.lang.NoClassDefFoundError: javax/transaction/Synchronization (jUnit测试报错)

      测试hibernate   报错原因项目缺少包   在 hibernate 解压目录下找到 jta.jar 文件     往项目中添加该 jar 包,即可解决   添加方法:[右击项目]--> ...

  7. Eclipse下Maven新建Web项目index.jsp报错完美解决(war包)

    Eclipse下Maven新建Web项目步骤 1. 2. 3. 4. 5. 问题描述 最近用eclipse新建了一个maven项目,结果刚新建完成index.jsp页面就报错了,先把错误信息贴出来看看 ...

  8. 使用Spring boot整合Hive,在启动Spring boot项目时,报错

    使用Spring boot整合Hive,在启动Spring boot项目时,报出异常: java.lang.NoSuchMethodError: org.eclipse.jetty.servlet.S ...

  9. maven 构建web项目index.jsp报错

    The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path... 解决 ...

随机推荐

  1. Jamie and Alarm Snooze

    Description Jamie loves sleeping. One day, he decides that he needs to wake up at exactly hh: mm. Ho ...

  2. 2017秋软工1 - 本周PSP

    1.本周PSP 2. 本周PSP饼状图 3. 本周进度条 4. 累计进度图

  3. ACM 第十八天

    数学基础(卷积,FFT,FWT,FMT,鸽巢原理,群论,哈里亚余数,哈里亚计数定理,组合数学,LVG定理,期望DP,期望点贡献问题) 练习题: A - Necklace of Beads Beads ...

  4. 3dContactPointAnnotationTool开发日志(八)

      今天上午去实验室打算把项目从github上pull下来发现貌似不行,然后强行pull下来后项目变得乱七八糟了,有的组件都不知道去哪里了.去github上看了看发现上面day6和day7都没有,特别 ...

  5. ZOJ 1711 H-Sum It Up

    https://vjudge.net/contest/67836#problem/H Given a specified total t and a list of n integers, find ...

  6. IIS安装出现“安装程序无法复制文件CONVLOG.EX_”的解决办法

    重新安装了一次IIS,结果就在重新安装的时候,出现安装程序无法复制文件CONVLOG.EX_,上网找了找资料,是因为secedit.sdb 数据库的问题,既然是因为这个文件的问题,那么我们就可以使用w ...

  7. phpcms v9 thumb(缩略图) 函数说明

    打开phcmsc/libs/functions/global.func.php文件,找到如下代码:/** * 生成缩略图函数 * @param  $imgurl 图片路径 * @param  $wid ...

  8. 简单java死锁设计002

    /** * 死锁举例 * @author lenovo * */ public class DeadlockTest { private static Object obj1 = new Object ...

  9. Jdk1.7 与 jdk1.8的区别,最新的特征有哪些(美团,360,京东面试题目)

    在jdk7的新特性方面主要有下面几方面的增强: 1.1二进制变量的表示,支持将整数类型用二进制来表示,用0b开头. 所有整数int.short.long.byte都可以用二进制表示: byte aBy ...

  10. IOI 98 (POJ 1179)Polygon(区间DP)

    很容易想到枚举第一步切掉的边,然后再计算能够产生的最大值. 联想到区间DP,令dp[i][l][r]为第一步切掉第i条边后从第i个顶点起区间[l,r]能够生成的最大值是多少. 但是状态不好转移,因为操 ...