2011-02-26 75 views
0

我已经使用JUnit 4和Selen写了几个测试脚本。 我已经将JUnit和Selenium的jar文件添加到eclipse中,并且如果通过eclipse IDE运行我的测试,那么所有工作都按预期工作。JUNIT ant脚本中的ClassNotFoundException

我现在想运行通过下面的ant脚本以下测试:

<project name="JUnit" default="test"> 

    <property name="src" value="./src" /> 
    <property name="classes" value="./classes" /> 
    <property name="test.class.name" value="AllTests" /> 

    <path id="test.classpath"> 
     <pathelement location="${classes}" /> 
     <pathelement location="C:/Program Files/eclipse 3.5/plugins/org.junit4_4.5.0.v20090824/junit.jar" /> 
     <pathelement location="C:/selenium/selenium-server-standalone-2.0b2.jar" /> 
     <pathelement location="C:/Program Files/eclipse 3.5/plugins/org.hamcrest.core_1.1.0.v20090501071000.jar" /> 
    </path> 

    <target name="test"> 
     <junit fork="yes" haltonfailure="yes"> 
     <test name="${test.class.name}" /> 
     <formatter type="plain" usefile="false" /> 
     <classpath refid="test.classpath" /> 
     </junit> 
    </target> 

</project> 

的问题是,当我跑我得到以下异常这ant脚本:

[junit] java.lang.ClassNotFoundException: AllTests 
[junit]  at java.net.URLClassLoader$1.run(Unknown Source) 
[junit]  at java.security.AccessController.doPrivileged(Native Method) 
[junit]  at java.net.URLClassLoader.findClass(Unknown Source) 
[junit]  at java.lang.ClassLoader.loadClass(Unknown Source) 
[junit]  at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 
[junit]  at java.lang.ClassLoader.loadClass(Unknown Source) 
[junit]  at java.lang.Class.forName0(Native Method) 
[junit]  at java.lang.Class.forName(Unknown Source) 

我已经添加了我在eclipse .classpath文件中看到的所有jar文件,所以对于缺少哪些文件有点困惑。

回答

5

发现问题,愚蠢的一个,但我想这是缺乏专注... 我的.class文件位于./bin文件夹中,蚂蚁脚本指向./classes。 我从我一直使用的旧蚂蚁脚本复制它,并没有注意到配置的属性。