通过Ant运行JUnit时使用不同的JAVA_HOME

时间:2018-02-12 17:59:22

标签: junit ant junit4 java-home

目前,我正在从Ant运行Junit。

我的环境变量JAVA_HOME设置为driver.find_element_by_xpath("//input[@type='email']").send_keys("abcd") driver.find_element_by_xpath("//input[@type='password']").send_keys("abcd") 但我希望JUnit测试与/path-to-jdk6一起运行。

我该如何设置?

这是我的Ant目标:

/path-to-jdk8

1 个答案:

答案 0 :(得分:0)

您可以将JUnit任务包装在单独的Ant exec task中,如下所示:

<macrodef name="exec-junit">
    <attribute name="antfile" default="${ant.file}" />
    <sequential>
        <exec executable="ant">
            <env key="JAVACMD" value="/path/to/jvm/1.8/bin/java" />
            <arg line='-f "@{antfile}"' />
            <arg line="junit" />
        </exec>
    </sequential>
</macrodef>

这使用JAVACMD环境变量...

  

JAVACMD - Java可执行文件的完整路径。使用它来调用与JAVA_HOME / bin / java(.exe)不同的JVM。

然后可以像这样调用上述目标:

<target name="test">
    <exec-junit/>
</target>