Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
phpcsとphpmdを利用した継続的インテグレーション
Search
cosuke2000
November 30, 2016
Business
0
190
phpcsとphpmdを利用した継続的インテグレーション
cosuke2000
November 30, 2016
Tweet
Share
Other Decks in Business
See All in Business
RECRUIT DECK 小平株式会社 会社説明資料
kobira_official
PRO
0
2.7k
ネクストビート 新卒向け会社紹介資料
nextbeat
1
510
Eco-Pork Impact Report 2026.02.09 EN
ecopork
0
280
re:Invent2025 re:Cap 〜技術的負債解消と AWS Transform Customと わたし〜
maijun
0
140
スタートアップ調査:女性起業家を取り巻く課題と解決策
mpower_partners
PRO
0
600
Startup Research : Challenges and solutions for female startup founders in Japan
mpower_partners
PRO
0
280
TAIAN Company Deck
taian
0
24k
会社説明資料
xinghr
0
230
ZEIN株式会社 会社説明資料【キャリア採用向け】
zein
0
140
RDRAモデルからFP・工数・金額につなぐ定量見積り
bpstudy
1
210
LW_brochure_business
lincwellhr
1
75k
Women in Agile Tokyo2026 「個をあるがままに生かす」は綺麗事でも簡単なことでもなかった
nekoyanagi
0
160
Featured
See All Featured
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
83
Mobile First: as difficult as doing things right
swwweet
225
10k
A better future with KSS
kneath
240
18k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
180
Building the Perfect Custom Keyboard
takai
2
690
Ethics towards AI in product and experience design
skipperchong
2
200
It's Worth the Effort
3n
188
29k
The Spectacular Lies of Maps
axbom
PRO
1
530
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Paper Plane (Part 1)
katiecoart
PRO
0
4.3k
The Language of Interfaces
destraynor
162
26k
RailsConf 2023
tenderlove
30
1.3k
Transcript
phpcsとphpmdを利用した 継続的インテグレーション @マッチングッドさいとう
自己紹介 マッチングッド株式会社について 人材会社向けのクラウドの基幹システムを運営している会社 toBでPHPを利用しておりモダンな技術で顧客価値の向上を目指し中 私について マッチングッドで代表を務めさせていただいております 技術的にはソースレビューの8割を行っています
今日の概要 当社で行っているphpcsとphpmdを利用した 継続的インテグレーションについてご紹介 継続的インテグレーションとは? 継続的インテグレーション、CI(英: continuous integration)と は、主にプログラマーのアプリケーション作成時の品質改善や納期の短縮 のための習慣 @wikipedia
抱えていた課題 コーディング規約(PSRにほぼ準拠)があるのに、 なぜかコーディング規約が遵守されないソースがpushされる・・・ 皆さんならPSRを守ってもらうためにどうしますか?
最初にやったこと .editorconfigの準備 エディタの設定で何とかしようとしたが・・・ [*] charset = utf‐8 indent_size = 4
indent_style = space trim_trailing_whitespace = true insert_final_newline = true phpcsとphpmdをコマンドで叩く phpcs:コーディング規約を遵守させるためのツール phpmd:潜在バグをチェックするためのツール ルールは作ったが・・・
別の問題 .editorconfigではコーディング規約の全てをカバーできない コーディング規約の中にある未使用の変数を使わないなどの 潜在バグをキャッチできない・・・ phpcsとphpmdをコマンドで叩くのを忘れる
だって忘れるよね どうしたら忘れないようにできるでしょうか?
解決策 当社ではソース管理をgithubで行ってますが、 CircleCIと連携させました。 そして、CircleCIでphpcsとphpmdをソースのpush時に動かし、 ユニットテストだけでなく、phpcsとphpmdもパスしないと、 マスターにマージできないようにしました。 circle.ymlの一部 vendor/bin/phpcs ‐‐standard=phpcs.xml vendor/bin/phpunit
vendor/bin/phpmd app text phpmd.xml
イメージ githubのイメージ circleCIのイメージ
結果 コーディング規約に関するレビュー量が8割減!!
We are hiring! ご清聴ありがとうございました!