phpstan bodyscan
Released PHPStan Bodyscan 0.2
获取每个phpstan级别的错误计数!
首先,我们查看phpstan.neon文件的项目根。
/src , /app , /tests等。然后,我们将每个级别的phpstan从0到8运行。我们计算错误并将其显示在表中。
composer require tomasvotruba/phpstan-bodyscan --dev在项目中运行工具。这将需要一些时间,因为它将为每个级别运行完整的PHPSTAN分析。
vendor/bin/phpstan-bodyscan↓
要获得每个级别的错误计数:
+-------+-------------+-----------+
| Level | Error count | Increment |
+-------+-------------+-----------+
| 0 | 0 | - |
| 1 | 35 | + 35 |
| 2 | 59 | + 24 |
| 3 | 59 | - |
| 4 | 120 | + 61 |
| 5 | 120 | - |
| 6 | 253 | + 133 |
| 7 | 350 | + 97 |
| 8 | 359 | + 9 |
+-------+-------------+----------- ; vendor/bin/phpstan-bodyscan --no-ignorevendor/bin/phpstan-bodyscan --bare我们为您覆盖了:
vendor/bin/phpstan-bodyscan --json↓
[
{
" level " : 0,
" error_count " : 0,
" increment_count " : 0
},
{
" level " : 1,
" error_count " : 5,
" increment_count " : 5
},
{
" level " : 2,
" error_count " : 25,
" increment_count " : 20
}
]您只对几个级别感兴趣吗?您可以通过选项限制范围:
vendor/bin/phpstan-bodyscan run --min-level 0 --max-level 3试验
您是否有兴趣学习该项目的参数,返回和属性类型声明覆盖范围?
运行type-coverage命令↓
vendor/bin/phpstan-bodyscan type-coverage --json↓
[
{
" category ": "param type",
"relative_covered": 100 ,
"total_count": 54
},
{
"category": "property type",
"relative_covered": 100 ,
"total_count": 1
},
{
"category": "return type",
"relative_covered": 100 ,
"total_count": 33
},
{
"category": "strict declares",
"relative_covered": 100 ,
" total_count": 18
}
]基于类型覆盖包。
一些项目需要加载.env文件以运行phpstan。您可以这样做:
vendor/bin/phpstan-bodyscan run --env-file some-parameters.env在一个新项目上运行phpstan可能会崩溃。为了从完成的级别保存数据,我们将其转移到bodyscan-log.txt文件中。
如果运行出于任何原因崩溃,则PHPSTAN错误输出也会被倾倒到同一文件。
愉快的编码!