Laravel 框架的 PHPUnit 覆盖率吐出 HTML 而不是 运行 测试

PHPUnit coverage for Laravel Framework spits out HTML instead of running tests

我 运行 解决了一个奇怪的问题,试图在 Mac OS X 和 Ubuntu 上为 Laravel Framework 5.4 创建测试覆盖率报告。

我检查了源代码并获取了依赖项。

$ git clone https://github.com/laravel/framework.git
$ cd framework
$ composer install

经过简单的单元测试后 运行 工作正常。

$ vendor/bin/phpunit --log-junit junit.xml
PHPUnit 5.7.20 by Sebastian Bergmann and contributors.

Runtime:       PHP 7.1.5
Configuration: /Users/egor/framework/phpunit.xml.dist

.............................................................   61 / 2668 (  2%)
.............................................................  122 / 2668 (  4%)

但是,当我添加覆盖率报告时,它会吐出一堆 HTML 而不是 运行 完整的测试集。这是输出的开头:

$vendor/bin/phpunit --log-junit junit.xml --coverage-clover clover.xml
PHPUnit 5.7.20 by Sebastian Bergmann and contributors.

Runtime:       PHP 7.1.5 with Xdebug 2.5.4
Configuration: /Users/egor/framework/phpunit.xml.dist

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">

        <title>Service Unavailable</title>

        <!-- Fonts -->
        <link href="https://fonts.googleapis.com/css?family=Raleway:100,600" rel="stylesheet" type="text/css">

我用自制软件 PHP 5.6、7.0 和 7.1 以及 Laravel Homestead vagrant box 和 PHP 7.1.

试过了

我还在 Travis-CI 中分叉了该项目并 运行 它。它适用于 PHP 5.6 和 7.0,但在 PHP 7.1.

上出现相同的 HTML 垃圾输出失败

您可以在此处查看失败的构建:https://travis-ci.org/egorpe/framework/jobs/241038092

那么,我在这里缺少什么?怎么回事?

这是 Laravel 中的一个有效错误。由这个拉取请求修复 https://github.com/laravel/framework/pull/19609