2011-02-26 73 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。 我從我一直使用的舊螞蟻腳本複製它,並沒有注意到配置的屬性。