Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
CakePHP2+BDD Pluginを使ってみよう!
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Kaz Watanabe
February 14, 2013
Technology
740
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CakePHP2+BDD Pluginを使ってみよう!
Kaz Watanabe
February 14, 2013
More Decks by Kaz Watanabe
See All by Kaz Watanabe
開発エンジニアが取り組む DevSecOps ~ GitHub Enterprise × Azure での実践~
kaz29
0
47
Greenは本当にGreenか? - B/GデプロイとAPI自動テストで安心デプロイ
kaz29
1
200
CI/CD/IaC 久々に0から環境を作ったらこうなりました
kaz29
1
510
開発エンジニアが実践するDevSecOps
kaz29
0
170
PHPCon福岡2024-Azureもなかなかいいですよ.pdf
kaz29
2
390
Azure Container Apps + Bicep 〜 こんな感じで運用しています
kaz29
3
1.3k
20220908_フロントエンドパフォーマンス改善.pdf
kaz29
2
200
PHP製のPodCast配信用WebアプリをReact+Next.jsなSSGで作り直してみた話
kaz29
3
720
バックエンドエンジニアの私がお勧めする SPAフロントエンド開発環境
kaz29
6
6.3k
Other Decks in Technology
See All in Technology
VS Code × GitHub Copilot での Fabric 開発
ryomaru0825
1
220
サーバーフルコンピューティング?AWS Lambda
iwatatomoya
0
130
Databricksメトリクスビューはじめてのもくもく会
taka_aki
0
160
[2026 Oracle Technical Deep Dive] AI時代のデータベース基盤をどう選ぶ? Exadata Database Serviceの選択肢と使い分け (2026年9月17日開催)
oracle4engineer
PRO
0
190
Amazon Bedrock Agents ClassicからAmazon Bedrock AgentCoreへ移行した際、ガードレール設定が2箇所に割れた話
matsunobu
0
170
全社共通データ基盤をつくる。ソニーのDatabricks活用とデータガバナンス設計の裏側
sony
0
300
FinTech 1-2 : Overview of FinTech
ks91
PRO
0
130
『GOエコノミー 』(相乗りサービス) におけるスペック駆動開発
mot_techtalk
1
220
企業の現実世界をグラフで写し取る
sansantech
PRO
0
240
Argo CDとAtlantisで実現するインフラ管理のセルフサービス化──小規模SREチームで支えるプラットフォーム
cassius7
0
280
AI Native Platform Engineering 〜PlatformとAgileで“作る速さ”を“価値”へ〜
uya116
0
600
MCPゲートウェイを作って運用してわかったこと — Agent時代の権限管理の現在地
mtpooh
10
2.9k
Featured
See All Featured
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.5k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
1
620
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
6.3k
Into the Great Unknown - MozCon
thekraken
41
2.7k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
42k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
550
Raft: Consensus for Rubyists
vanstee
142
7.7k
WCS-LA-2024
lcolladotor
0
840
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
540
Darren the Foodie - Storyboard
khoart
PRO
4
4k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
470
Transcript
CakePHP2+BDD PluginΛ ͬͯΈΑ͏ʂ 2013/02/14 ୈҰճCakeBeerTalk @kaz_29 132݄14༵
who? • Θͨͳ͔ͣͻΖ(@kaz_29) • ϑϦʔϥϯε(decr.jp) • Webܥͷ։ൃ • ΞϓϦ͔ΒΠϯϑϥ·Ͱ... •
iPhone/iPadΞϓϦ։ൃ • NiftyCloudϢʔβʔϒϩά #iphonedev #cakephp #golf #cat #beer 132݄14༵
ిྗάϥϑ DNS Console for Dozens 132݄14༵
What is BDD? 132݄14༵
Behavior Driven Development ৼ ۦಈ ։ൃ 132݄14༵
l͜Ε͔Β࡞͠Α͏ͱ͢Δϓϩάϥ Ϝʹظ͞ΕΔʮৼΔ͍ʯʮ੍ ݅ʯɺͭ·Γʮཁٻ༷ʯʹ͍ۙܗ ͰɺࣗવݴޠΛซه͠ͳ͕Βςετί ʔυΛهड़͢ΔɻςετϑϨʔϜϫʔ Ϋͷϝιου໊ࣗવݴޠʹ͍ۙܗΛ ͱ͍ͬͯΔɻ http://ja.wikipedia.org/wiki/ϏϔΠϏΞۦಈ։ൃ 132݄14༵
# language: ja ϑΟʔνϟ: ϒϩάͷهࣄΛӾཡ͍ͨ͠ ͳͥͳΒϒϩάͷهࣄΛӾཡ͢Δ͜ͱͰɺ࠷৽ͷใΛೖख͍͔ͨ͠Βͩ എܠ:
લఏ ϒϩάهࣄʹҎԼͷ༰͕ొ͞Ε͍ͯΔ͜ͱ: | λΠτϧ | ຊจ | | λΠτϧ | ͜ΕɺهࣄͷຊจͰ͢ɻ | | ·ͨλΠτϧ | ͦ͜ʹຊจ͕ଓ͖·͢ɻ | | Title strikes back | ͜ΓΌຊʹΘ͘Θ͘͢Δʂ͏ͦɻ | γφϦΦ: هࣄҰཡΛӾཡͰ͖Δ͜ͱ લఏ "τοϓϖʔδ" Λද͍ࣔͯ͠Δ ͳΒ "λΠτϧ" ͱදࣔ͞Ε͍ͯΔ͜ͱ ͔ͭ "·ͨλΠτϧ" ͱදࣔ͞Ε͍ͯΔ͜ͱ ͔ͭ "Title strikes back" ͱදࣔ͞Ε͍ͯΔ͜ͱ BDD Plugin αϯϓϧΑΓ ϑΟʔνϟ γφϦΦ εςοϓ 132݄14༵
ར༻ՄೳͳStep $ ./app/Console/cake Bdd.Story --lang ja -dl (-di) 132݄14༵
ετʔϦʔͷهड़จ๏ $ ./app/Console/cake Bdd.Story --lang ja --story-syntax 132݄14༵
BDD plugin for CakePHP2 https://github.com/sizuhiko/Bdd 132݄14༵
Functions • Spec (Spec for PHP) • CakePHPͷfixture͕͑Δ • ࠷ۙίʔυΧόϨοδΛऔΕΔ༷ʹͳͬͨ
• Story (Behat) • CakePHP༻ͷDB࿈ܞػೳ(truncateModel/getModel) • URLͷaliasػೳ • Other • URLͷΤΠϦΞεػೳ(ετʔϦͷՄಡੑ্ͷͨΊʣ 132݄14༵
Install $ git submodule add https://github.com/sizuhiko/Bdd.git plugins/Bdd $ cd plgins/Bdd
$ curl -s https://getcomposer.org/installer | php $ php composer.phar install --dev $ ./app/Console/cake Bdd.init BDD Plugin ೖΕΔ ϥΠϒϥϦ܈ೖΕΔ (composer) ͻͳܗΛࣗಈੜ 132݄14༵
DEMO 132݄14༵
• window.confirm/alertɺhtmlunitͰೝࣝͰ͖ ͳ͍ͨΊΘͳ͍ํ͕ྑ͍ • ϒϥβʹΑͬͯɺλΠϛϯά͕ͣΕͯΤϥ ʔ͕ग़Δࣄ͕͋ΔͷͰwaitΛ͍Εͯௐ͢Δ ඞཁ͕͋Δ • Mac SafariͷύεϫʔυอଘμΠΞϩά
• UTF-8ͷΈ ҙ 132݄14༵
՝ • όϥϯε • ίϯτϩʔϥͷςετ/डೖΕςετ • Ͳ͜·Ͱςετॻ͘ʁ • ͕ͬͭΓJavaScriptͬͯΔͱͬͺΓॻ͖ ʹ͍͘
• ϒϥβຖͷλΠϛϯάௐ • डೖΕςετޭͰࣗಈσϓϩΠ • UnitTest or Spec? 132݄14༵
fin !LB[@ 132݄14༵