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
Behavior Driven Development: Describe your Lara...
Search
Andrew Morgan
November 15, 2016
Programming
91
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Behavior Driven Development: Describe your Laravel Application with Behat
Andrew Morgan
November 15, 2016
Other Decks in Programming
See All in Programming
ハーネス設計入門 〜 基礎知識の整理から実務へのステップアップ 〜
kinopeee
28
32k
Workers Cache を知る
syumai
0
360
Compiling a real-world CLI tool to native with Static Hermes
tmikov2023
0
120
なぜCTOを降りてFDEを選んだのか?〜なぜプロダクト企業がFDEで顧客の現場に踏み込むのか〜
gonta
1
210
phperだってパンチカードでコーディングしたい
o0h
PRO
0
340
3回つくってわかった、 定期実行ジョブ基盤の本質情報
takai
0
480
作れる、でも消せるか?──安全に「枯らして消す」機能削除術 / Drain, Then Delete
chobishiba
2
680
Apple Intelligence を用いた個人情報誤送信防止、及びユーザーリクエスト体験の改善について
yukiny
0
350
残高管理から台帳サービスへの進化
artoy
1
200
GemmaをJevのように使ってみる / Use Gemma like Jev
kishida
5
790
AIで開発が速くなった先で、開発チームは何を目指すか
shihochan
0
1.3k
UnityでSystem.Net.WebSocketsなWebSocketサーバが動かないのでUnity Monoのコードを覗いてみた / about implementing websocket server with unity mono
drumath2237
1
610
Featured
See All Featured
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
410
How to train your dragon (web standard)
notwaldorf
96
6.9k
Designing Powerful Visuals for Engaging Learning
tmiket
1
610
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
520
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Become a Pro
speakerdeck
PRO
31
6.3k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
570
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
300
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.5k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
630
Between Models and Reality
mayunak
4
500
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
203
77k
Transcript
BEHAVIOR DRIVEN DEVELOPMENT - DESCRIBE YOUR LARAVEL APPLICATION WITH BEHAT
ANDREW MORGAN
BDD ▸ Full Stack Web Developer - 7 years ▸
Co-host ConstantCoders podcast - constantcoders.io ▸ andrewmorgan.me ▸ @AndrewMorgan3
BDD ABLETO ▸ Behavioral Health Company ▸ Leverage technology to
provide remote therapy ▸ We are hiring! ▸ ableto.com/careers ▸ ableto.com/patient-journey
BDD BEHAVIOR DRIVEN DEVELOPMENT ▸ Behavior-driven development provides software development
and management teams with shared tools and a shared process to collaborate on software development. - Wikipedia
BDD WHAT THE BUSINESS NEEDS ▸ A solution for users
to share photos
BDD WHAT DEVELOPERS HEAR ▸ Users Table ▸ Photos Table
▸ Upload Photo Form
TWO DIFFERENT LANGUAGES
BDD UBIQUITOUS LANGUAGE ▸ The practice of building up a
common, rigorous language between developers and users - Eric Evans ▸ Based on the language of the domain ▸ Shared, understood, and agreed upon
BDD ABSTRACTIONS ▸ Language is full of abstractions. ▸ Words
are used to represent descriptions. ▸ Naming things ▸ Discovery
BDD GHERKIN
BDD USING THE LANGUAGE OF THE DOMAIN
BDD BEHAT ▸ behat.org/ ▸ github.com/Behat/Behat ▸ composer require behat/behat
behat/mink behat/mink- extension —dev
BDD BEHAT + LARAVEL ▸ github.com/laracasts/Behat-Laravel-Extension ▸ composer require laracasts/behat-laravel-extension
—dev
BDD SETUP ▸ behat.yml ▸ .feature files ▸ contexts
▸ behat.yml
▸ features/Images/sharing-images.feature
▸ features/Images/Contexts/Browser.php
▸ directory structure
BDD WORKFLOW ▸ Write a feature ▸ Create one or
more feature contexts ▸ run behat or vendor/bin/behat in terminal ▸ run behat —append-snipets to add any missing methods
None
None
None
None
None
None
HOW ABOUT JAVASCRIPT?
BDD PHANTOM JS ▸ phantomjs.org/ ▸ brew install phantomjs ▸
apt-get phantomjs ▸ composer require --dev behat/mink-selenium2-driver ▸ phantomjs —webdriver=8643
None
None
QUESTIONS
BDD ▸ slides: speakerdeck.com/andrewmile/behavior-driven- development-describe-your-laravel-application-with-behat