今天开发中遇到的问题,代码提交到svn上去之后,hundson很快就红了。
检查hundson,发现该项目下所有的junit测试案例都失败了,所以的case都是一个错误:
java.lang.reflect.InvocationTargetException
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
Caused by: java.lang.NoClassDefFoundError: org/junit/runner/Describable
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
在本地eclipse环境下没有类似问题(有点废话,肯定是本地跑过了才提交代码的),错误信息上看是junit初始化出问题,和具体case就没有关系了。
考虑这次提交的时候修改了几个依赖,猜想是和他们有关:升级easymock 2.5.3到3.0,增加jmockit 0.997 / jsch-0.1.43。
祭google大法,很快发现有人遇到类似问题,原因是junit 4.4版本不支持jmockit集成,需要junit 4.5或更高版本。
随即升级junit版本,效果立竿见影,问题消失。
记录下来,遇到类似问题的朋友,可以参考。
分享到:
相关推荐
junit4.4的最新版本最新版本最新版本
junit4.4 的jar包 不包含文档,谢谢
junit4.4+junit4.5+开源码打包下载
junit4.4 2007年8月14日
包括了Junit 4.4和3.8.1的所有源码及帮助文档,有助于深入学习 junit
这是JUnit4.4官方的帮助文件。我把它做成chm格式发上来,希望对大家有用
本例介绍了利用了 spring框架进行测试
junit 4.4的说明文档以及JAR 包
junit4.4.jar +easymock3.0.jar
包含了4.4和3.8.1的所有源码以及生成好的.CHM文件方便大家学习
junit-4.4包+源码
junit4.4是rar格式的
(java常用工具jar组合)c3p0-0.9.1.2.bin+jackson 2.82+JSTL-jar+junit4.4.jar+gson-2.5.jar
NULL 博文链接:https://vb2005xu.iteye.com/blog/1273025
JUnit is a simple framework to write repeatable tests. It is an instance of the xUnit architecture for unit testing frameworks.
下载搭建即可用,本人没积分了,把自己最新搭建的框架上传共享,搭建过程中遇到什么问题,可以找我。
JUnit是由Erich Gamma和Kent Beck创建的Java单元测试框架。 junit/junit/4.4/junit-4.4.pom
JUnit 发展至今,版本不停的翻新,但是所有版本都一致致力于解决一个问题,那就是如何发现编程人员的代码意图,并且如何使得编程人员更加容易地表达他们的代码意图。JUnit 4.4 也是为了如何能够更好的达到这个目的...
已包含,基本上的项目都可适用了。 junit-4.4.jar spring-test.jar 等