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
Kaz Watanabe
January 31, 2013
Programming
0
800
CakePHP2+BDD Pluginで カンタン受入れテスト
2013/3/9
(CakePHPとか)PHPのテストについての勉強会@co-edo
Kaz Watanabe
January 31, 2013
Tweet
Share
More Decks by Kaz Watanabe
See All by Kaz Watanabe
CI/CD/IaC 久々に0から環境を作ったらこうなりました
kaz29
1
410
開発エンジニアが実践するDevSecOps
kaz29
0
110
PHPCon福岡2024-Azureもなかなかいいですよ.pdf
kaz29
2
240
Azure Container Apps + Bicep 〜 こんな感じで運用しています
kaz29
3
1.1k
20220908_フロントエンドパフォーマンス改善.pdf
kaz29
2
170
PHP製のPodCast配信用WebアプリをReact+Next.jsなSSGで作り直してみた話
kaz29
3
660
バックエンドエンジニアの私がお勧めする SPAフロントエンド開発環境
kaz29
6
6.1k
201909-PHPCon北海道-PHPでCI_CD.pdf
kaz29
0
3.8k
2019/02/27 PHP勉強会 #135 PHPでCI・CD
kaz29
0
340
Other Decks in Programming
See All in Programming
Navigation 2 を 3 に移行する(予定)ためにやったこと
yokomii
0
270
AI Coding Agentのセキュリティリスク:PRの自己承認とメルカリの対策
s3h
0
230
請來的 AI Agent 同事們在寫程式時,怎麼用 pytest 去除各種幻想與盲點
keitheis
0
120
testingを眺める
matumoto
1
140
Compose Multiplatform × AI で作る、次世代アプリ開発支援ツールの設計と実装
thagikura
0
160
ユーザーも開発者も悩ませない TV アプリ開発 ~Compose の内部実装から学ぶフォーカス制御~
taked137
0
180
旅行プランAIエージェント開発の裏側
ippo012
2
910
奥深くて厄介な「改行」と仲良くなる20分
oguemon
1
540
2025 年のコーディングエージェントの現在地とエンジニアの仕事の変化について
azukiazusa1
24
12k
Updates on MLS on Ruby (and maybe more)
sylph01
1
180
AIでLINEスタンプを作ってみた
eycjur
1
230
そのAPI、誰のため? Androidライブラリ設計における利用者目線の実践テクニック
mkeeda
2
310
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
Six Lessons from altMBA
skipperchong
28
4k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
188
55k
The Art of Programming - Codeland 2020
erikaheidi
56
13k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.5k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
51
5.6k
Into the Great Unknown - MozCon
thekraken
40
2k
How GitHub (no longer) Works
holman
315
140k
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༵