給github項目添加CI badge

上一節講到了 PHP 單元測試,數據庫測試,那麼測試報告結果怎麼添加到本身的 github 項目中去呢?也或者說,怎麼讓程序自動幫咱們完成這些工做呢?php

我就簡單帶你們入門一下吧。估計不少朋友們對着方面其實沒啥要求的,不過了解一下,搞很差之後用得着。mysql

相關網站:git

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

相關文章
相關標籤/搜索