Domanda

Come si può eseguire test di AsUnit corridore da Ant?

Sono su Mac OS per cui uso:

open -a "flash player" tests.swf

Come posso fare questo cross-platform?

È stato utile?

Soluzione

Ecco un obiettivo che compilerà i test in un file SWF ed eseguirli. I test vengono eseguiti utilizzando l'attività exec. Questa versione utilizza il comando Apri da Mac OS.

Per Windows Posso solo pensare di utilizzare una proprietà impostata per il percorso completo al giocatore exe Flash e utilizzare che per eseguire i test.

<target name="tests">

    <taskdef resource="flexTasks.tasks" classpath="${flextask.jar}" />

    <mxmlc file="${test.main}" output="${tests.output}" incremental="true" debug="false" static-link-runtime-shared-libraries="true">
        <source-path path-element="${tests.dir}"/>
        <load-config filename="${flex.config}" />
        <library-path dir="${flex.lib}" append="true">
            <include name="flex.swc" />
        </library-path>
        <library-path dir="${libs.test.dir}" append="true">
            <include name="*.swc" />
        </library-path>
    </mxmlc>

    <exec executable="open" os="Mac OS X">
        <arg line='-a "flash player" ${tests.output}' />
    </exec>

</target>

Ecco le caratteristiche:

# Build locations
src.dir=${basedir}/src/main/actionscript
package.dir=your/apps/package
libs.dir=${basedir}/libs
output.dir=${basedir}/bin
output.swc=${output.dir}/${project.name.versioned}.swc

# testing
tests.dir=${basedir}/src/test/actionscript
tests.output=${output.dir}/${ant.project.name}-tests.swf
libs.test.dir=${basedir}/src/test/libs
test.main=test.main=${tests.dir}/${package.dir}/AllTestsRunner.as

docs.dir=${basedir}/docs

# flex resources
flex.config=${FLEX_HOME}/frameworks/flex-config.xml
flex.lib=${FLEX_HOME}/frameworks/libs
flextask.jar=${FLEX_HOME}/ant/lib/flexTasks.jar
mxmlc.jar=${FLEX_HOME}/lib/mxmlc.jar
compc.jar=${FLEX_HOME}/lib/compc.jar
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top