小编Pha*_*Pha的帖子

Symfony 3.4 - 我们可以收集功能测试的代码覆盖率吗?

我在一些项目中使用 symfony 3.4。根据文档,我们应该为我们的控制器编写功能测试。然而,我们似乎无法收集功能测试的代码覆盖率,因为 symfony 将在另一个 PHP 进程中运行主代码。

  • 在 phpunit 进程中:var_dump(xdebug_code_coverage_started()) => true
  • 在控制器代码中:var_dump(xdebug_code_coverage_started()) => false.

更新:似乎只有当我将测试放在单独的文件夹中时才会出现该问题src。当我将测试放在同一个包文件夹中时它可以工作(src/MyBubndle/Tests

PHP 单元配置

<?xml version="1.0" encoding="UTF-8"?>
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:noNamespaceSchemaLocation="http://schema.phpunit.de/6.0/phpunit.xsd"
         backupGlobals="false"
         colors="true"
         processIsolation = "false"
         bootstrap="vendor/autoload.php"
>
    <php>
        <ini name="error_reporting" value="-1" />
        <server name="KERNEL_DIR" value="app/" />
        <env name="SYMFONY_DEPRECATIONS_HELPER" value="weak"/>
        <!--<env name="KERNEL_CLASS" value="App\Kernel" />-->
        <env name="APP_ENV" value="test"/>
        <env name="APP_DEBUG" value="1"/>
        <env name="SYMFONY_ENV" value="test"/>
        <env name="MYSQL_SERVER" value="127.0.0.1"/>
        <env name="MYSQL_DATABASE" value="db"/>
        <env name="MYSQL_USER" value="root"/>
        <env name="MYSQL_PASSWORD" value="root"/>
        <env name="MYSQL_PORT" value="3306"/>
        <env name="JWT_PUBLIC_KEY_PATH" …
Run Code Online (Sandbox Code Playgroud)

php phpunit code-coverage symfony

5
推荐指数
0
解决办法
869
查看次数

标签 统计

code-coverage ×1

php ×1

phpunit ×1

symfony ×1