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
CakePHP2+BDD Pluginで カンタン受入れテスト
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Kaz Watanabe
January 31, 2013
Programming
840
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CakePHP2+BDD Pluginで カンタン受入れテスト
2013/3/9
(CakePHPとか)PHPのテストについての勉強会@co-edo
Kaz Watanabe
January 31, 2013
More Decks by Kaz Watanabe
See All by Kaz Watanabe
開発エンジニアが取り組む DevSecOps ~ GitHub Enterprise × Azure での実践~
kaz29
0
35
Greenは本当にGreenか? - B/GデプロイとAPI自動テストで安心デプロイ
kaz29
1
190
CI/CD/IaC 久々に0から環境を作ったらこうなりました
kaz29
1
480
開発エンジニアが実践するDevSecOps
kaz29
0
150
PHPCon福岡2024-Azureもなかなかいいですよ.pdf
kaz29
2
370
Azure Container Apps + Bicep 〜 こんな感じで運用しています
kaz29
3
1.3k
20220908_フロントエンドパフォーマンス改善.pdf
kaz29
2
200
PHP製のPodCast配信用WebアプリをReact+Next.jsなSSGで作り直してみた話
kaz29
3
710
バックエンドエンジニアの私がお勧めする SPAフロントエンド開発環境
kaz29
6
6.3k
Other Decks in Programming
See All in Programming
Creating Composable Callables in Contemporary C++
rollbear
0
110
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
570
The ROI of Quarkus for Spring Boot Applications
hollycummins
0
110
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
510
Hunting Vulnerabilities in Symfony with LLMs
vinceamstoutz
0
540
JJUG CCC 2026 Spring: JSpecify で実現する Kotlin フレンドリーな Java API 設計
ternbusty
1
160
The NotImplementedError Problem in Ruby
koic
1
740
AIチームを指揮するOSS「TAKT」活用術 / How to Use “TAKT,” an OSS Tool for Orchestrating AI Teams
nrslib
6
890
Language Server 使ってる? 〜VSCode と Zed の場合〜 / Are you using a Language Server? ~For VS Code and Zed~
handlename
0
780
Spec Driven Development | AI Summit Lisbon
danielsogl
PRO
0
190
スマートグラスで並列バイブコーディング
hyshu
0
130
技術記事、 専門家としてのプログラマ、 言語化
mizchi
13
5.4k
Featured
See All Featured
Code Review Best Practice
trishagee
74
20k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
170
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.1k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
270
Utilizing Notion as your number one productivity tool
mfonobong
4
320
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
How to build a perfect <img>
jonoalderson
1
5.6k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
330
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
170
We Are The Robots
honzajavorek
0
250
Transcript
CakePHP2+Jenkins ͰܧଓతΠϯςάϨʔγϣϯ 2013/3/9 ʢCakePHPͱ͔ʣPHPͷςετʹ͍ͭͯͷษڧձ@co-edo Kaz Watanabe(@kaz_29) 133݄9༵
Who? Θͨͳ͔ͣͻΖ(@kaz_29) ϑϦʔϥϯε(decr.jp) Webܥͷ։ൃ ΞϓϦ͔ΒΠϯϑϥ·Ͱ... iPhone/iPadΞϓϦ։ൃ NiftyCloudϢʔβʔϒϩά #beer #iosdev #cakephp
#cat #camp #golf 133݄9༵
Who? ిྗάϥϑ DNS Console for Dozens 133݄9༵
ܧଓత ΠϯςάϨʔγϣϯ Continuous Integration 133݄9༵
ओʹϓϩάϥϚʔͷΞϓϦέʔγϣϯ࡞ ࣌ͷ࣭վળೲظͷॖͷͨΊͷश ׳ͷ͜ͱͰ͋ΔɻΤΫετϦʔϜɾϓϩ άϥϛϯάͷϓϥΫςΟεͷҰͭͰɺڱ ٛʹϏϧυςετɺΠϯεϖΫγϣ ϯͳͲΛܧଓతʹ࣮ߦ͍ͯ͘͜͠ͱΛҙ ຯ͢Δɻಛʹɺۙͷ։ൃʹ͓͍ͯɺ ܧଓతΠϯςάϨʔγϣϯΛαϙʔτ͢ ΔιϑτΣΞΛ༻͢Δ͜ͱ͕͋Δɻ http://ja.wikipedia.org/wiki/ܧଓతΠϯςάϨʔγϣϯ
133݄9༵
ϝϦοτ ͕͙͢ʹݟ͔ͭΔ Өڹൣғ͕খ͍͞͏ͪʹͤΔ ࣗಈͳͷͰख͕͔͔ؒΒͳ͍ มԽͷ༷ࢠΛ֬ೝͰ͖Δ 133݄9༵
http://amzn.to/rPiR9V https://speakerdeck.com/ryuzee/cakephp-plus-jenkinsniyoruaziyairukai-fa-number- phpmatsuri 133݄9༵
ಈ࡞ڥ 133݄9༵
ᶃpush ྲྀΕ ᶄgithub WebHook ᶅpoll ᶄcommit log ϛʔςΟϯάπʔϧ (։ൃऀϝϯό/ΫϥΠΞϯτ) ᶆBuild
ࣦഊ ϠόΠʂ͙ͤ͢ʙʂʂ 133݄9༵
Install https://gist.github.com/kaz29/5116408 Ubuntu 12.04 133݄9༵
php-job-template http://jenkins-php.org/ https://gist.github.com/kaz29/5116408#file-php-template-sh 133݄9༵
Build Trigger ଞϓϩδΣΫτͷϏϧυޙʹϏϧυ ϦϞʔτ͔ΒϏϧυ (ྫ: εΫϦϓτ͔Β) Build when a change
is pushed to GitHub SCMΛϙʔϦϯά ఆظతʹ࣮ߦ 133݄9༵
BuildͷΈ Apache Ant Phing Shell etc... 133݄9༵
Apache Ant Java༻ͷϏϧυπʔϧ ෳͷtargetΛࢦఆ targetͷґଘؔ ίϚϯυͷ࣮ߦ 133݄9༵
XMLॻ͘ͷ໘ (><) 133݄9༵
CakePHP2༻ ࡞ͬͨ https://gist.github.com/kaz29/5116408#file-build-xml 133݄9༵
ԿΛ͢Δ͔? lint - จ๏νΣοΫ phploc(*) - ϓϩδΣΫτͷنΛଌఆ pdpend (*) -
ύοέʔδ୯ҐͷϝτϦΫεͷଌఆ(ґଘͱ͔) phpcb (*) - ιʔείʔυຖͷঢ়ଶΛղੳ phpmd - ੩తղੳ(্࣮ͷΛݕग़) phpcs - ίʔσΟϯάنνΣοΫ phpcpd - ίϐϖίʔυͷݕग़ migration - DBͷϚΠάϨʔγϣϯ(cakedc/Migrations plugin) UnitTest - ୯ମςετ(CakePHP TestCase) StoryTest - डೖΕςετ(sizuhiko/Bdd plugin) 133݄9༵
Buildޙͷॲཧ BuildͰ࡞͞Εͨ݁ՌΛूܭ Checkstyle PMD phpcpd Code Coverage UnitTest݁Ռ 133݄9༵
133݄9༵
DEMO 133݄9༵
3ϲ݄·Θͨ͠ ײ 133݄9༵
༧֎ͷόά ͕ݟ͔ͭΔ 133݄9༵
Framework/Library Updateָ͕ 133݄9༵
ࠓޙͷ՝ 133݄9༵
JenkinsͷߴԽ 133݄9༵
UnitTest/Story Test ͷ 133݄9༵
ࣗಈ ʮσϓϩʙΠʂʯ 133݄9༵
Q? @kaz_29 133݄9༵