【问题标题】:PHPUnit does not generate clover.xml report filePHPUnit 不生成 clover.xml 报告文件
【发布时间】:2016-10-24 00:33:36
【问题描述】:

这些是我的配置:

phpunit.xml

    <!-- http://phpunit.de/manual/4.1/en/appendixes.configuration.html -->
    <phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:noNamespaceSchemaLocation="http://schema.phpunit.de/4.1/phpunit.xsd"
             backupGlobals="false"
             colors="true"
             bootstrap="../usr/core/autoload.test.php"
    >
        <php>
            <ini name="error_reporting" value="-1" />
            <server name="KERNEL_DIR" value="usr/core/" />
        </php>

        <testsuites>
            <testsuite name="Api">
                <directory>../usr/Project/Api/*Bundle/Tests</directory>
            </testsuite>
            <testsuite name="Backend">
                <directory>../usr/Project/Backend/*Bundle/Tests</directory>
            </testsuite>
            <testsuite name="CMS">
                <directory>../usr/Project/CMS/*Bundle/Tests</directory>
            </testsuite>
            <testsuite name="Console">
                <directory>../usr/Project/Console/*Bundle/Tests</directory>
            </testsuite>
            <testsuite name="Im">
                <directory>../usr/Project/Im/*Bundle/Tests</directory>
            </testsuite>
            <testsuite name="Library">
                <directory>../usr/Project/Library/*Bundle/Tests</directory>
            </testsuite>
            <testsuite name="Registration">
                <directory>../usr/Project/Registration/*Bundle/Tests</directory>
            </testsuite>
            <testsuite name="TestSuite">
                <directory>../usr/tests</directory>
            </testsuite>
        </testsuites>

        <filter>
            <whitelist addUncoveredFilesFromWhitelist="true">
                <directory>usr</directory>
                <exclude>
                    <directory>../usr/*Bundle/Resources</directory>
                    <directory>../usr/*/*Bundle/Resources</directory>
                    <directory>../usr/*/Bundle/*Bundle/Resources</directory>
                </exclude>
            </whitelist>
        </filter>
    </phpunit>

和ant配置:

<target name="phpunit"
        unless="phpunit.done"
        description="Run unit tests with PHPUnit">
    <exec executable="${phpunit}" resultproperty="result.phpunit" taskname="phpunit">
        <arg value="--configuration"  path="${basedir}/build/phpunit.xml"/>
        <arg value="--coverage-clover"  path="${basedir}/build/logs/clover.xml"/>
        <arg value="--log-junit" path="${basedir}/build/logs/phpunit.xml"/>
    </exec>

    <property name="phpunit.done" value="true"/>
</target>

到目前为止一切正常。 但是当我在 jenkins 中执行时,我收到以下消息:

    Clover xml file does not exist in: /var/lib/jenkins/workspace/Project5FullBuild called: build/logs/clover.xml and will not be copied to: /var/lib/jenkins/jobs/Project5FullBuild/builds/39/cloverphp/clover.xml
    Could not find 'build/coverage/build/logs/clover.xml'.  Did you generate the XML report for Clover?

我检查了日志目录。 不存在 clover.xml。 我还检查了其他几个谷歌提示,但到目前为止没有任何帮助。 我错过了什么?

【问题讨论】:

    标签: jenkins phpunit php-7 clover


    【解决方案1】:

    在我的情况下,必须安装php-xdebug 模块,否则它不起作用。

    【讨论】:

      【解决方案2】:

      如果你的配置文件中的whitelisting 没有产生文件,据我所知,phpunit 不会生成覆盖 xml 文件。

      尝试修改您的过滤器元素以确保它包含文件,例如:

      <filter>
          <whitelist processUncoveredFilesFromWhitelist="true">
              <directory suffix=".php">somedir</directory>
          </whitelist>
      </filter>
      

      【讨论】:

        猜你喜欢
        • 2020-10-19
        • 2020-03-05
        • 2016-10-04
        • 1970-01-01
        • 2023-03-21
        • 2011-03-02
        • 2011-01-28
        • 2011-03-09
        • 2012-01-13
        相关资源
        最近更新 更多