php质量工具系列之PHPCPD

打印 上一主题 下一主题

主题 659|帖子 659|积分 1977

PHPCPD 用于检测重复代码,直观的说就是复制粘贴再轻微改改
该工具作者已经 停止维护
  安装

  1. composer global require --dev sebastian/phpcpd
复制代码
执行

  1. phpcpd --log-pmd phpcpd_result.xml ./app
复制代码
  参数先容 --log-pmd 将结果生存在phpcpd_result.xml 中
./app 是phpcpd扫描的项目目录
–suffix 指定扫描的文件后缀,可以出现多次以便指定多个后缀
–exclude 无需扫描的路径,也可出现多次指定多个路径
  结果

标明那个文件的多少行到多少行是重复的

Jenkins中的使用

在项目构建步骤中增长 执行shell
  1. #执行phpcpdif `docker exec phpfpm82 /tmp/composer/vendor/bin/phpcpd >/dev/null 2>&1`; then  echo '开始执行phpcpd'else  docker exec phpfpm82 composer global require --dev sebastian/phpcpd
  2. fidocker exec phpfpm82 /bin/sh -c "cd /var/www/workspace/$JOB_NAME/ && /tmp/composer/vendor/bin/phpcpd --log-pmd reports/phpcpd_result.xml ./app"
复制代码
可视化结果

jenkins插件 DRY 已经停止下载,所以没有可视化的界面可用,具体见 https://plugins.jenkins.io/dry/
看到这里了,点个赞再走吧
PHP质量工具系列

PHP/JS质量工具,安全工具,Jenkins插件 总结
TOP 6 PHP代码质量工具
PHP质量工具系列之php-depend
PHP质量工具系列之phpmd
PHP质量工具系列之phpcpd
PHP质量工具系列之phploc
PHP质量工具系列之paslm
PHP质量工具系列之phpstan
PHP质量工具系列之Owasp dependency-check
PHP质量工具系列之php_codesniffer
PHP质量工具系列之phpunit
PHP质量工具系列之xhprof
SBOM天生之CycloneDX
CI/CD之Jenkins插件使用系列

jenkins插件之Jdepend
jenkins插件之plot
jenkins插件之dependency-check
jenkins插件之Warnings
jenkins插件之xunit

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

不到断气不罢休

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表