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
830
0
Share
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
29
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
350
Azure Container Apps + Bicep 〜 こんな感じで運用しています
kaz29
3
1.3k
20220908_フロントエンドパフォーマンス改善.pdf
kaz29
2
190
PHP製のPodCast配信用WebアプリをReact+Next.jsなSSGで作り直してみた話
kaz29
3
710
バックエンドエンジニアの私がお勧めする SPAフロントエンド開発環境
kaz29
6
6.2k
Other Decks in Programming
See All in Programming
When benchmarks go bad - what I learned from measuring performance wrong
hollycummins
0
380
ふにゃっとしない名前の付け方 〜哲学で茹で上げる、コシのあるソフトウェア設計〜
shimomura
0
110
AlarmKitで明後日起きれるアラームアプリを作る
trickart
0
130
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
330
【26新卒研修】OpenAPI/Swagger REST API研修
dip_tech
PRO
0
150
WebAssembly を読み込むベストプラクティス 2026年春版 / Best Practices for Loading WebAssembly (Spring 2026)
petamoriken
5
1.1k
過去のレビュー知見をSkillsで資産化した話
pkshadeck
PRO
1
1.8k
JCON - Create Agentic AI Apps, The Easy Way!
kdubois
1
100
サプライチェーン攻撃対策「層を重ねて落ちない壁」を10日間で組み上げた話 #TechLeadConf2026
kashewnuts
1
250
SREに優しいTerraform構成 modulesとstateの組み方
hiyanger
2
170
Firefoxにコントリビューションして得られた学び
ken7253
2
160
運転動画を検索可能にする〜Cosmos-Embed1とDatabricks Vector Searchで〜/cosmos-embed1-databricks-vector-search
studio_graph
1
690
Featured
See All Featured
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
220
Designing for Performance
lara
611
70k
Crafting Experiences
bethany
1
140
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
790
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2k
Bash Introduction
62gerente
615
210k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
180
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
250
How to Talk to Developers About Accessibility
jct
2
190
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
23k
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༵