Laravel 5.2 上的 phpunit 覆盖率
Coverage phpunit on Laravel 5.2
我执行PhPUnit,无法生成覆盖率报告,
Laravel版本:5.2
Php 版本:7.3.11。
日志输出为:
PHPUnit 4.8.36 by Sebastian Bergmann and contributors. .
Time: 1.51 seconds, Memory: 22.00MB
OK (1 test, 1 assertion)
Generating code coverage report in HTML format ...count(): Parameter must be an array or an object that implements Countable
我不知道这里有什么问题?
这是我的测试源:
<?php
use Illuminate\Foundation\Testing\WithoutMiddleware;
use Illuminate\Foundation\Testing\DatabaseMigrations;
use Illuminate\Foundation\Testing\DatabaseTransactions;
use Illuminate\Http\Response;
class TravelControllerTest extends TestCase
{
/**
* A basic functional test example.
*
* @return void
*/
public function testBasicExample()
{
$response = $this->json('GET', '/v1/abc', ['id' => 'Sally']);
$response->assertSessionHas('temporary_id', $value = 'Sally');
}
}
升级 PHPUnit 和 PhpCodeCoverage 包将是解决方案。你的包裹太过时了!这是旧版本中的错误。
这里有一些关于这个话题的讨论:
https://github.com/Codeception/Codeception/issues/4703
https://github.com/sebastianbergmann/php-code-coverage/issues/551
我执行PhPUnit,无法生成覆盖率报告, Laravel版本:5.2 Php 版本:7.3.11。 日志输出为:
PHPUnit 4.8.36 by Sebastian Bergmann and contributors. .
Time: 1.51 seconds, Memory: 22.00MB
OK (1 test, 1 assertion)
Generating code coverage report in HTML format ...count(): Parameter must be an array or an object that implements Countable
我不知道这里有什么问题? 这是我的测试源:
<?php
use Illuminate\Foundation\Testing\WithoutMiddleware;
use Illuminate\Foundation\Testing\DatabaseMigrations;
use Illuminate\Foundation\Testing\DatabaseTransactions;
use Illuminate\Http\Response;
class TravelControllerTest extends TestCase
{
/**
* A basic functional test example.
*
* @return void
*/
public function testBasicExample()
{
$response = $this->json('GET', '/v1/abc', ['id' => 'Sally']);
$response->assertSessionHas('temporary_id', $value = 'Sally');
}
}
升级 PHPUnit 和 PhpCodeCoverage 包将是解决方案。你的包裹太过时了!这是旧版本中的错误。
这里有一些关于这个话题的讨论:
https://github.com/Codeception/Codeception/issues/4703
https://github.com/sebastianbergmann/php-code-coverage/issues/551