上一节讲到了 PHP 单元测试,数据库测试,那么测试报告结果怎么添加到自己的 github 项目中去呢?也或者说,怎么让程序自动帮我们完成这些工作呢?
我就简单带大家入门一下吧。估计很多朋友们对着方面其实没啥要求的,不过了解一下,搞不好以后用得着。
相关网站:
TravisCI
StyleCI
ScrutinizerCI
TravisCI
进去 TravisCi ,授权登录,Sign in for github,选择账号
开发需要做集成的项目。
添加 .travis.yml
language: php
php:
- '5.6'
- '7'
script: vendor/bin/phpunit
根据具体测试反馈,对代码进行修正,更新,重复以上步骤,以保证代码的健壮性。
每次当我们推送代码,就会触发 travis ci,由程序自动帮我们执行如配置文件中的流程,其中除了 script
选项外,还有其他,例如: before_script
, after_script
,等选项,更多选项和配置请参考: TravisCI文档。
如果需要用到其他测试套件,例如 redis,mysql 等,则需要配置 services 配置项,mysql 默认账号:
username: root
password:
具体可以参考: Setting up Services and Database
StyleCI
为了保持与 StyleCI 的编码风格一致,我们需要设置 PHPStorm IDE 的编码规范。
设置完编码规范后,通过快捷键: option + command + l 一键格式化(针对 Mac 操作)。
进入 styleci.io, 使用 github 账号登录,进入账号,选择 Repos, 选择需要进行测试的项目。
测试完成后,系统会产生测试报告,并且可以自动发送 PR 请求到 github,帮助你一键修复代码。
可以添加如下配置信息到配置文件: .styleci.yml
preset: symfony
linting: true
enabled:
- strict
- strict_param
- ordered_use
在代码提交的时候,自动执行以上规范检查。然后找到 badge 添加到 reamde.md 文件中即可显示项目构建状态。更多配置项请参考文档: StyleCi文档
StyleCI 是这么多个系统中,相对操作简单的一个质量检测系统。
Scrutinizer CI
顾名思义,他是一个执行质量检查的工具,用于规范代码和提前暴露一些代码问题。
同样的,需要授权登录在平台当中,也是使用 github 进行登录。
添加对应需要执行的 Repository,添加完成后,可以对项目进行第一次质量检查,得出初步的信息。
执行完成,生成报告后,可以添加测试结果图标到项目中。但如果项目上没有具体配置信息,可以在此处
获取配置信息,添加到 .scrutinizer.yml
文件中,那么在下次执行检查的时候,就会按照指定的工作流去指定代码检查。
如果在质量检查的时候用到 dbunit
测试套件的,scrutinizer 提供相当多的套件,可以对应配置具体测试数据。
数据库默认账号:
username: root
password:
如果想要执行创建库,创建表,可以在配置项 build
中,添加配置信息
build:
project_setup:
before:
- mysql -uroot -e "CREATE DATABASE IF NOT EXISTS demo;"
更多配置请参考: Build Configuration
如果不清楚配置文件如何配置,可以参考 github 上的开源项目,找到 .travis.yml, 等隐藏文件即可,又或者可以看我的项目: fastD
暂且说这么多先把。还有很多很多的功能和测试就靠大家去发掘了。
临走前,给大家安利一个 badge 生成神器: shieldsIO