santer / code-quality-bundle
快速基本的Symfony应用程序质量保证方法
dev-master
2016-11-19 20:00 UTC
Requires
- escapestudios/symfony2-coding-standard: ^2.0
- pdepend/pdepend: ^2.0
- phploc/phploc: ^2.1
- phpmd/phpmd: ^2.4
- sebastian/phpcpd: ^2.0
- squizlabs/php_codesniffer: ^2.0
- symfony/filesystem: ^2.3|^3.0
- symfony/process: ^2.3|^3.0
This package is not auto-updated.
Last update: 2024-09-23 13:16:57 UTC
README
一个简单快速的质量保证您的Symfony应用程序的方法。
此包使用以下工具检查您的代码
结果以一组位于您的Web目录内的HTML页面形式呈现。通过Web服务器启动 https:///qa/index.html 文件(这很重要,因为json/xml不会从文件系统加载到页面中)。
此包不是Jenkins for PHP或Sonar之类的替代品。
但它可以帮助您从代码开始就保持代码质量。
安装
步骤1:下载包
打开命令行,进入您的Symfony项目目录,然后执行以下命令以下载此包的最新稳定版本
$ composer require --dev santer/code-quality-bundle
此命令要求您全局安装Composer,如Composer文档中的安装章节中所述。
该包将作为开发依赖项安装,因此它不会影响您的生产环境。
步骤2:启用包
然后,通过将其添加到项目中 app/AppKernel.php
文件中注册的包列表中,启用该包。请确保您只为开发环境注册包。
<?php // app/AppKernel.php // ... class AppKernel extends Kernel { public function registerBundles() { // ... if (in_array($this->getEnvironment(), array('dev', 'test'), true)) { // ... $bundles[] = new DevTools\CodeQualityBundle\DevToolsCodeQualityBundle(); } // ... } // ... }
步骤3:配置包
以上两个步骤对于大多数常见的Symfony项目就足够了。
您可以直接跳到“步骤4”开始使用该包。
要更改包的行为,请在app/config/config_dev.yml中添加配置。以下是当前可用的完整配置选项及其默认值
dev_tools_code_quality: # Path where your code base is located inspect_path: src # Path where reports will be generated output_path: web/qa # Composer bin-dir bin_path: bin # Array of commands to run # The following values are allowed: ['phploc', 'pdepend', 'phpmd', 'phpcpd', 'phpcs'] features: - phploc - pdepend - phpmd - phpcpd - phpcs # Options for PHP_CodeSniffer phpcs: # A list of standards to be checked, selected from the available set. # PHPCS supports [PSR1, PSR2, Zend, PHPCS, PEAR, Squiz, MySource] by default. # The "Symfony2" standard installed as a dependency and available # on the following path: vendor/escapestudios/symfony2-coding-standard/Symfony2. standard: - Symfony2
动态更改配置
$ php app/console dev:code-quality --help Usage: dev:code-quality [options] Options: --inspect-path=INSPECT-PATH Path where your code base is located --output-path=OUTPUT-PATH Path where reports will be generated --bin-path=BIN-PATH Composer bin-dir --skip-phploc Disable PHPLOC --skip-pdepend Disable PHP_Depend --skip-phpmd Disable PHP Mess Detector --skip-phpcpd Disable PHP Copy/Paste Detector --skip-phpcs Disable PHP_CodeSniffer -e, --env=ENV The Environment name. [default: "dev"]
步骤4:通过使用此包改进您的代码
使用命令生成报告
php app/console dev:code-quality
当命令完成后,完整报告将在此页面上可用: https:///qa/index.html。请用您的站点名称替换“localhost”。
从PHP_CodeSniffer页面开始,看看您可以在代码中改进什么。
局限性
- 对标准报告没有进行任何操作 - 因此请期待XML、JSON和非常基础的HTML文件。
- Web文件夹中的HTML文件只是json/xml文件的快速可视化,不要期望更多...但如果您想让它更美观,请通过pull-request来。
- PHP Dead Code Detector没有被包括在内,因为它在我测试的Symfony应用程序中给出了许多误报。
- 它不会自动生成文档 - 如 PHPDox 或 phpDocumentor
待办事项列表
以下功能计划在1.0版本中实现
- 使用Symfony2编码标准
- 添加--quiet选项
- 将lint:twig和lint:yaml命令包含在报告中
- 使报告HTML文件更具用户友好性
- 添加更多配置选项