从ANT将命令行参数传递给jstestdriver JAR?

lee*_*d00 8 javascript ant unit-testing js-test-driver

我正在尝试使用jstestdriver在Windows中的ant构建中生成一些单元测试.我计划通过使用<java> ant任务从ant目标运行jstestdriver来实现此目的.

到目前为止,对于我的ant构建文件,我有以下内容:

 <target name="jstestdriver" description="Runs the js unit tests">
Run Code Online (Sandbox Code Playgroud)

        ...
Run Code Online (Sandbox Code Playgroud)

现在在<java>标签(上面的"......")里面我尝试添加以下内容:

 <arg value="--config" />
 <arg value="../../jstestdriver.conf" />

 <arg value="--tests" />
 <arg value="${whichTests}" />

 <arg value="--testOutput" />    
 <arg value="${reports.dir}" />
Run Code Online (Sandbox Code Playgroud)

当我运行jstestdriver目标时,控制台上不显示任何消息,并且在它们要生成的目录中没有junit输出文件.


我也试过下面的代码片段,这似乎表明jar正在执行:

 <arg value="--config ..\..\jstestdriver.conf" />
 <arg value="--tests ${whichTests}" />
 <arg value="--testOutput ${reports.dir}" />
Run Code Online (Sandbox Code Playgroud)

但它只是显示一条错误消息:

  "--config ..\..\jstestdriver.conf" is not a valid option
Run Code Online (Sandbox Code Playgroud)

...并另外显示jstestdriver jar的选项列表.

我不确定我做错了什么......

Kal*_*son 1

我认为您可能想将每个参数及其值分解为单独的参数。例如:

<arg value="--config" />
<arg value="..\..\jstestdriver.conf" />
<arg value="--tests" />
<arg value="${whichTests}" />
<arg value="--testOutput" />
<arg value="${report.dir}" />
Run Code Online (Sandbox Code Playgroud)