簡體   English   中英

如何將<junit>任務的工作目錄設置為除basedir之外的其他任務?

[英]How to set the working directory for a <junit> task to something other than the basedir?

我有一個帶有junit目標的Ant腳本,我希望它使用與basedir不同的工作目錄啟動VM。 我該怎么做?

這是我的目標的偽版本。

<target name="buildWithClassFiles">
    <mkdir dir="${basedir}/UnitTest/junit-reports"/>
    <junit fork="true" printsummary="yes">
        <classpath>
            <pathelement location="${basedir}/UnitTest/bin"/>
            <path refid="classpath.compile.tests.nojars"/>
        </classpath>
        <jvmarg value="-javaagent:${lib}/jmockit/jmockit.jar=coverage=:html"/>
        <formatter type="xml" />
        <test name="GlobalTests" todir="${basedir}/UnitTest/junit-reports" />
    </junit>

</target>

你有沒有嘗試過:

 <junit fork="true" printsummary="yes" dir="workingdir">

我認為其他答案可能忽略了您希望指定工作目錄的事實,而不僅僅是您想要在特定目錄上運行junit。 換句話說,您希望確保如果測試創建的文件沒有路徑信息,則它來自您指定的基本目錄。

嘗試將您想要的目錄作為JVM arg傳遞給junit,覆蓋user.dir

 <junit fork="true" ...>
   <jvmarg value="-Duser.dir=${desired.current.dir}"/>
    ....

暫無
暫無

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

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