簡體   English   中英

Ant Junit ClassNotFoundException…再次

[英]Ant Junit ClassNotFoundException…again

我知道它們很多,但是我看不到解決方案,所有幫助將不勝感激。 因此,嘗試執行一個ant任務來運行我的junit測試。 遇到ClassNotFoundException。

<property name="testsrc" value="${project.home}/../extensions/myaddon/testsrc"/>
<property name="src" value="${project.home}/../extensions/myaddon/src"/>
<property name="websrc" value="${project.home}/../extension/myaddon/acceleratoraddon/web/src"/>
<property name="junitLocation" value="${project.home}/../lib/junit-4.10.jar"/>

<path id="test-path">
    <pathelement location="${testsrc}"/>
    <pathelement location="${src}"/>
    <pathelement location="${websrc}"/>
    <pathelement location="${junitLocation}"/>
</path>
<!--
Batch testing
This will be used to test every test file we have rather than having to specify individual ones
-->
<target name="codtests" description="run all junit tests for myaddon">
    <junit printsummary="yes" haltonfailure="no" showoutput="yes">
        <classpath>
            <path refid="test-path"/>
        </classpath>

        <batchtest>
            <fileset dir="${testsrc}">
                <include name="**/*Test.java" />
            </fileset>
        </batchtest>
    </junit>
    <echo message="batch testing done"/>
</target>

堆棧跟蹤:

C:\tem\cnacc.cod>ant codtests
Buildfile: C:\tem\cnacc.cod\build.xml

codtests:
    [junit] Running codaddon.setup.CodSetupTest
    [junit] Testsuite: codaddon.setup.CodSetupTest
    [junit] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 se
c
    [junit] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 se
c
    [junit]
    [junit]     Caused an ERROR
    [junit] codaddon.setup.CodSetupTest
    [junit] java.lang.ClassNotFoundException: codaddon.setup.CodSetupTest
    [junit]     at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    [junit]     at java.lang.Class.forName0(Native Method)
    [junit]     at java.lang.Class.forName(Class.java:270)
    [junit]
    [junit] Test codaddon.setup.CodSetupTest FAILED
    [junit] Running codaddon.setup.FakeTest
    [junit] Testsuite: codaddon.setup.FakeTest
    [junit] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 se
c
    [junit] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 se
c
    [junit]
    [junit]     Caused an ERROR
    [junit] codaddon.setup.FakeTest
    [junit] java.lang.ClassNotFoundException: codaddon.setup.FakeTest
    [junit]     at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    [junit]     at java.lang.Class.forName0(Native Method)
    [junit]     at java.lang.Class.forName(Class.java:270)
    [junit]
    [junit] Test codaddon.setup.FakeTest FAILED
    [junit] Running codaddon.test.AutoPassTest
    [junit] Testsuite: codaddon.test.AutoPassTest
    [junit] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 se
c
    [junit] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 se
c
    [junit]
    [junit]     Caused an ERROR
    [junit] codaddon.test.AutoPassTest
    [junit] java.lang.ClassNotFoundException: codaddon.test.AutoPassTest
    [junit]     at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    [junit]     at java.lang.Class.forName0(Native Method)
    [junit]     at java.lang.Class.forName(Class.java:270)
    [junit]
    [junit] Test codaddon.test.AutoPassTest FAILED
    [junit] Running codaddon.test.Fake2Test
    [junit] Testsuite: codaddon.test.Fake2Test
    [junit] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 se
c
    [junit] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0 se
c
    [junit]
    [junit]     Caused an ERROR
    [junit] codaddon.test.Fake2Test
    [junit] java.lang.ClassNotFoundException: codaddon.test.Fake2Test
    [junit]     at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    [junit]     at java.lang.Class.forName0(Native Method)
    [junit]     at java.lang.Class.forName(Class.java:270)
    [junit]
    [junit] Test codaddon.test.Fake2Test FAILED
     [echo] batch testing done

BUILD SUCCESSFUL
Total time: 0 seconds

C:\tem\cnacc.cod>

是的,您應該粘貼stacktrace。 也許是一個瘋狂的猜測,您在哪里定義了$ {project.home}變量? 我看到這是類路徑中唯一未解決的變量。

您需要指向測試.class文件,而不是源文件。
編譯測試並將文件夾添加到test-path

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM