2010-09-28 4 views
3

J'essaie d'automatiser ma procédure de test en utilisant Ant. Ceci est mon erreur:phpUnit & Ant option non reconnue --log-xml

test: 
PHPUnit 3.5.0 by Sebastian Bergmann. 

unrecognized option --log-xml 
/var/www/nrka2/build/build.xml:30: exec returned: 1 
BUILD FAILED (total time: 1 second) 

Et voici ma build.xml

<?xml version="1.0" encoding="UTF-8"?> 
<project name="eventManager" default="build" basedir="../"> 

    <target name="getProps"> 
     <property file="${basedir}/build/ant.properties" /> 

     <condition property="script-suffix" value="" else=""> 
      <os family="unix" /> 
     </condition> 

     <echo message="---- Build Properties ----" /> 
     <echo message="" /> 


     <echo message="OS is ${os.name}" /> 
     <echo message="Basedir is ${basedir}" /> 
     <echo message="Property file is ${basedir}/build/ant.properties" /> 
     <echo message="Script-suffix is ${script-suffix}" /> 

     <echo message="" /> 
     <echo message="---- eventManager Properties ----" /> 
     <echo message="" /> 

     <echo message="Environment is ${environment}" /> 

    </target> 

    <target name="test" depends="getProps"> 
     <exec dir="${basedir}/tests" executable="phpunit${script-suffix}" 
      failonerror="true"> 
      <arg line="--colors --coverage-html ${basedir}/build/report 
      --log-xml ${basedir}/build/logs/phpunit.xml 
      --log-pmd ${basedir}/build/logs/phpunit.pmd.xml 
      --log-metrics ${basedir}/build/logs/phpunit.metrics.xml 
      --coverage-xml ${basedir}/build/logs/phpunit.coverage.xml 
      AllTests.php" /> 
     </exec> 
    </target> 

    <target name="configure" depends="getProps"> 
     <copy file="${basedir}/application/application.php.dist" tofile="${basedir}/application/application.php" 
      overwrite="true" /> 
     <replace file="${basedir}/application/application.php" token="@[email protected]" 
      value="${environment}" /> 

    </target> 

    <target name="buildPreparation"> 
     <mkdir dir="${basedir}/build/logs" /> 
     <mkdir dir="${basedir}/build/report" /> 
    </target> 

    <target name="clean"> 
     <delete dir="${basedir}/build/logs" /> 
     <delete dir="${basedir}/build/report" /> 
    </target> 

    <target name="deploy"> 
     <echo message="---- Removing require_once ----" /> 
     <replaceregexp byline="true"> 
      <regexp pattern="require_once 'Zend/" /> 
      <substitution expression="// require_once 'Zend/" /> 
      <fileset dir="${basedir}/library/Zend" excludes="**/*Autoloader.php" 
       includes="**/*.php" /> 
     </replaceregexp> 
    </target> 

    <target name="build" depends="buildPreparation,configure,test" /> 
</project> 

quelqu'un peut me aider à résoudre ce problème?

Répondre

3

PHPUnit 3.5.0 ne prend pas un argument --log-xml. Voici la sortie des options disponibles par la commande --help:

$ phpunit --help 
PHPUnit 3.5.0 by Sebastian Bergmann. 

Usage: phpunit [switches] UnitTest [UnitTest.php] 
     phpunit [switches] <directory> 

    --log-junit <file>  Log test execution in JUnit XML format to file. 
    --log-tap <file>   Log test execution in TAP format to file. 
    --log-dbus    Log test execution to DBUS. 
    --log-json <file>  Log test execution in JSON format. 

    --coverage-html <dir> Generate code coverage report in HTML format. 
    --coverage-clover <file> Write code coverage data in Clover XML format. 

    --story-html <file>  Write Story/BDD results in HTML format to file. 
    --story-text <file>  Write Story/BDD results in Text format to file. 

    --testdox-html <file> Write agile documentation in HTML format to file. 
    --testdox-text <file> Write agile documentation in Text format to file. 

    --filter <pattern>  Filter which tests to run. 
    --group ...    Only runs tests from the specified group(s). 
    --exclude-group ...  Exclude tests from the specified group(s). 
    --list-groups   List available test groups. 

    --loader <loader>  TestSuiteLoader implementation to use. 
    --repeat <times>   Runs the test(s) repeatedly. 

    --story     Report test execution progress in Story/BDD format. 
    --tap     Report test execution progress in TAP format. 
    --testdox    Report test execution progress in TestDox format. 

    --colors     Use colors in output. 
    --stderr     Write to STDERR instead of STDOUT. 
    --stop-on-error   Stop execution upon first error. 
    --stop-on-failure  Stop execution upon first error or failure. 
    --stop-on-skipped  Stop execution upon first skipped test. 
    --stop-on-incomplete  Stop execution upon first incomplete test. 
    --strict     Mark a test as incomplete if no assertions are made. 
    --verbose    Output more verbose information. 
    --wait     Waits for a keystroke after each test. 

    --skeleton-class   Generate Unit class for UnitTest in UnitTest.php. 
    --skeleton-test   Generate UnitTest class for Unit in Unit.php. 

    --process-isolation  Run each test in a separate PHP process. 
    --no-globals-backup  Do not backup and restore $GLOBALS for each test. 
    --static-backup   Backup and restore static attributes for each test. 
    --syntax-check   Try to check source files for syntax errors. 

    --bootstrap <file>  A "bootstrap" PHP file that is run before the tests. 
    --configuration <file> Read configuration from XML file. 
    --no-configuration  Ignore default configuration file (phpunit.xml). 
    --include-path <path(s)> Prepend PHP's include_path with given path(s). 
    -d key[=value]   Sets a php.ini value. 

    --help     Prints this usage information. 
    --version    Prints the version and exits. 

Vous devriez probablement utiliser --log-junit à la place. Notez qu'il n'y a pas non plus d'options --log-pmd, --log-metrics ou --coverage-xml. Vous devrez donc les modifier également.

Découvrez this lien suivant github en ce qui concerne les commutateurs retirés de PHPUnit:

  • --log-pmd et --log-metrics ont été enlevés comme décrit here avec l'intention que la fonctionnalité correspondante sera déplacée dans PHP_Depend et PHPMD
  • utilisation --coverage-clover au lieu de --coverage-xml

H ope qui aide!

+0

TNX pour la réponse. Après je l'ai changé à Junit Il se plaint également des prochains fichiers journaux qui ont également été spécifiés. Pouvez-vous s'il vous plaît mettre à jour votre message et dites-moi quels sont les remplacements pour: --log-pmd, - log-metrics et --coverage-xml? – sanders

+0

J'ai ajouté plus d'informations dans ma réponse. –

Questions connexes