Submit Search
Upload
Continuous Testing
•
0 likes
•
1,887 views
Eric Hogue
Follow
A talk on continuous testing in PHP I gave at the uncon of True North PHP 2013.
Read less
Read more
Technology
Sports
Report
Share
Report
Share
1 of 48
Download now
Download to read offline
Recommended
Oow08slides
Oow08slides
Jake Kuramoto
Owen wallace week two
Owen wallace week two
owwallace
Presentación1
Presentación1
Miguel Manzano Alonso
Evernote - Taking Notes
Evernote - Taking Notes
Schipul - The Web Marketing Company
Manuel deangelo visual_resumestoryboard
Manuel deangelo visual_resumestoryboard
dmanuel1
Theory of Multiple Intelligences
Theory of Multiple Intelligences
Gary Schrader
Theory of Multiple Intelligences
Theory of Multiple Intelligences
Gary Schrader
Dark Ages 2.0
Dark Ages 2.0
simonmhawkins
Recommended
Oow08slides
Oow08slides
Jake Kuramoto
Owen wallace week two
Owen wallace week two
owwallace
Presentación1
Presentación1
Miguel Manzano Alonso
Evernote - Taking Notes
Evernote - Taking Notes
Schipul - The Web Marketing Company
Manuel deangelo visual_resumestoryboard
Manuel deangelo visual_resumestoryboard
dmanuel1
Theory of Multiple Intelligences
Theory of Multiple Intelligences
Gary Schrader
Theory of Multiple Intelligences
Theory of Multiple Intelligences
Gary Schrader
Dark Ages 2.0
Dark Ages 2.0
simonmhawkins
A glimpse into the future of higher education
A glimpse into the future of higher education
Aisyah Saad Abdul Rahim
Lit Final Presentation
Lit Final Presentation
cpost7
On Compelling Storytelling
On Compelling Storytelling
Alan Levine
Tech integration pk 1
Tech integration pk 1
University Liggett School
Firefox小技巧-快速看圖
Firefox小技巧-快速看圖
Justin Lee
Online Film Distribution
Online Film Distribution
Chi-chi Ekweozor
What is a PhotoCamp?
What is a PhotoCamp?
Pete Prodoehl
Shots and Angles
Shots and Angles
spmath
Our students won_t_research_the_way_we_did
Our students won_t_research_the_way_we_did
Nate Kogan
Growing Grails Software, Driven by Domain
Growing Grails Software, Driven by Domain
Yukei Wachi
Perceptive media for #CanvasConf
Perceptive media for #CanvasConf
Ian Forrester
Presentation notes and references
Presentation notes and references
Lexi Mills
How to not hate your job
How to not hate your job
Mark Cohen
Ibarra francisco industry_speech_slides
Ibarra francisco industry_speech_slides
fjibarra
Simon david 4.4_finalppp_slideshow
Simon david 4.4_finalppp_slideshow
David Simon
Avoiding Traps in Projects
Avoiding Traps in Projects
Patrick McAndrew
Listening To Each Other
Listening To Each Other
Rev. Chris Cahill
7 Facts Every Author Ought To Know
7 Facts Every Author Ought To Know
TreDigital
What do a leaky roof, a greasy spoon, a bear sighting, and a man with a torto...
What do a leaky roof, a greasy spoon, a bear sighting, and a man with a torto...
Peter Bromberg
Creating Compelling Digital Stories
Creating Compelling Digital Stories
Alan Levine
ALA Preconference Making it Stick
ALA Preconference Making it Stick
Lori Reed
Knowing God
Knowing God
imedia322
More Related Content
What's hot
A glimpse into the future of higher education
A glimpse into the future of higher education
Aisyah Saad Abdul Rahim
Lit Final Presentation
Lit Final Presentation
cpost7
On Compelling Storytelling
On Compelling Storytelling
Alan Levine
Tech integration pk 1
Tech integration pk 1
University Liggett School
Firefox小技巧-快速看圖
Firefox小技巧-快速看圖
Justin Lee
Online Film Distribution
Online Film Distribution
Chi-chi Ekweozor
What is a PhotoCamp?
What is a PhotoCamp?
Pete Prodoehl
Shots and Angles
Shots and Angles
spmath
Our students won_t_research_the_way_we_did
Our students won_t_research_the_way_we_did
Nate Kogan
Growing Grails Software, Driven by Domain
Growing Grails Software, Driven by Domain
Yukei Wachi
Perceptive media for #CanvasConf
Perceptive media for #CanvasConf
Ian Forrester
Presentation notes and references
Presentation notes and references
Lexi Mills
How to not hate your job
How to not hate your job
Mark Cohen
Ibarra francisco industry_speech_slides
Ibarra francisco industry_speech_slides
fjibarra
Simon david 4.4_finalppp_slideshow
Simon david 4.4_finalppp_slideshow
David Simon
Avoiding Traps in Projects
Avoiding Traps in Projects
Patrick McAndrew
Listening To Each Other
Listening To Each Other
Rev. Chris Cahill
7 Facts Every Author Ought To Know
7 Facts Every Author Ought To Know
TreDigital
What do a leaky roof, a greasy spoon, a bear sighting, and a man with a torto...
What do a leaky roof, a greasy spoon, a bear sighting, and a man with a torto...
Peter Bromberg
Creating Compelling Digital Stories
Creating Compelling Digital Stories
Alan Levine
What's hot
(20)
A glimpse into the future of higher education
A glimpse into the future of higher education
Lit Final Presentation
Lit Final Presentation
On Compelling Storytelling
On Compelling Storytelling
Tech integration pk 1
Tech integration pk 1
Firefox小技巧-快速看圖
Firefox小技巧-快速看圖
Online Film Distribution
Online Film Distribution
What is a PhotoCamp?
What is a PhotoCamp?
Shots and Angles
Shots and Angles
Our students won_t_research_the_way_we_did
Our students won_t_research_the_way_we_did
Growing Grails Software, Driven by Domain
Growing Grails Software, Driven by Domain
Perceptive media for #CanvasConf
Perceptive media for #CanvasConf
Presentation notes and references
Presentation notes and references
How to not hate your job
How to not hate your job
Ibarra francisco industry_speech_slides
Ibarra francisco industry_speech_slides
Simon david 4.4_finalppp_slideshow
Simon david 4.4_finalppp_slideshow
Avoiding Traps in Projects
Avoiding Traps in Projects
Listening To Each Other
Listening To Each Other
7 Facts Every Author Ought To Know
7 Facts Every Author Ought To Know
What do a leaky roof, a greasy spoon, a bear sighting, and a man with a torto...
What do a leaky roof, a greasy spoon, a bear sighting, and a man with a torto...
Creating Compelling Digital Stories
Creating Compelling Digital Stories
Similar to Continuous Testing
ALA Preconference Making it Stick
ALA Preconference Making it Stick
Lori Reed
Knowing God
Knowing God
imedia322
Building your Personal Brand
Building your Personal Brand
ThinkTank Collective Intelligence Software
Social Business: Be Social, Don't Use Social
Social Business: Be Social, Don't Use Social
Gina Schreck
Just Me
Just Me
[ki:]®Learning Business Skills
The challenge
The challenge
Shiv Chaudhary
Leading Through Change: Inspiring Awakening
Leading Through Change: Inspiring Awakening
Michelle Pacansky-Brock
Success Factors of the Connected Home - Applications
Success Factors of the Connected Home - Applications
DSP-Partners
Secrets Of An Impromptu
Secrets Of An Impromptu
LouisetteZurita
Oow 2008 Final
Oow 2008 Final
Jake Kuramoto
#Marketing
#Marketing
Filippo Selden
Inspiring Students
Inspiring Students
sraslim
戦略的設計入門
戦略的設計入門
Yukei Wachi
Top ten slide tips
Top ten slide tips
kpraet1
Improving Bounce Rate
Improving Bounce Rate
Matthew Culnane
Email Marketing For Small Business
Email Marketing For Small Business
John Walker
TEDx Seattle 2013
TEDx Seattle 2013
Haiku Deck
TEDx Seattle 2013
TEDx Seattle 2013
Catherine Carr
Struggling To Get Prospects To Call You Back ? Try These Three Simple Strateg...
Struggling To Get Prospects To Call You Back ? Try These Three Simple Strateg...
Ago Cluytens
Create Your Own Future
Create Your Own Future
Anwar Ahmadabidin
Similar to Continuous Testing
(20)
ALA Preconference Making it Stick
ALA Preconference Making it Stick
Knowing God
Knowing God
Building your Personal Brand
Building your Personal Brand
Social Business: Be Social, Don't Use Social
Social Business: Be Social, Don't Use Social
Just Me
Just Me
The challenge
The challenge
Leading Through Change: Inspiring Awakening
Leading Through Change: Inspiring Awakening
Success Factors of the Connected Home - Applications
Success Factors of the Connected Home - Applications
Secrets Of An Impromptu
Secrets Of An Impromptu
Oow 2008 Final
Oow 2008 Final
#Marketing
#Marketing
Inspiring Students
Inspiring Students
戦略的設計入門
戦略的設計入門
Top ten slide tips
Top ten slide tips
Improving Bounce Rate
Improving Bounce Rate
Email Marketing For Small Business
Email Marketing For Small Business
TEDx Seattle 2013
TEDx Seattle 2013
TEDx Seattle 2013
TEDx Seattle 2013
Struggling To Get Prospects To Call You Back ? Try These Three Simple Strateg...
Struggling To Get Prospects To Call You Back ? Try These Three Simple Strateg...
Create Your Own Future
Create Your Own Future
More from Eric Hogue
Au secours, mon application est brisée - Ou comment déboguer
Au secours, mon application est brisée - Ou comment déboguer
Eric Hogue
Introduction à l'intégration continue en PHP
Introduction à l'intégration continue en PHP
Eric Hogue
Commencer avec le TDD
Commencer avec le TDD
Eric Hogue
Introduction à l’intégration continue avec Jenkins
Introduction à l’intégration continue avec Jenkins
Eric Hogue
Introduction to Continuous Integration with Jenkins
Introduction to Continuous Integration with Jenkins
Eric Hogue
Guarding Your Code Against Bugs with Continuous Testing
Guarding Your Code Against Bugs with Continuous Testing
Eric Hogue
Continuous testing In PHP
Continuous testing In PHP
Eric Hogue
La sécurité des communications avec GPG
La sécurité des communications avec GPG
Eric Hogue
Getting started with TDD - Confoo 2014
Getting started with TDD - Confoo 2014
Eric Hogue
Commencer avec le tdd
Commencer avec le tdd
Eric Hogue
Introduction to ci with jenkins
Introduction to ci with jenkins
Eric Hogue
Integration continue
Integration continue
Eric Hogue
More from Eric Hogue
(12)
Au secours, mon application est brisée - Ou comment déboguer
Au secours, mon application est brisée - Ou comment déboguer
Introduction à l'intégration continue en PHP
Introduction à l'intégration continue en PHP
Commencer avec le TDD
Commencer avec le TDD
Introduction à l’intégration continue avec Jenkins
Introduction à l’intégration continue avec Jenkins
Introduction to Continuous Integration with Jenkins
Introduction to Continuous Integration with Jenkins
Guarding Your Code Against Bugs with Continuous Testing
Guarding Your Code Against Bugs with Continuous Testing
Continuous testing In PHP
Continuous testing In PHP
La sécurité des communications avec GPG
La sécurité des communications avec GPG
Getting started with TDD - Confoo 2014
Getting started with TDD - Confoo 2014
Commencer avec le tdd
Commencer avec le tdd
Introduction to ci with jenkins
Introduction to ci with jenkins
Integration continue
Integration continue
Recently uploaded
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
Alan Dix
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
Stephanie Beckett
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
Curtis Poe
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
LoriGlavin3
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
UiPathCommunity
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
Dilum Bandara
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
BookNet Canada
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
ScyllaDB
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
mohitsingh558521
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Precisely
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
Rizwan Syed
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
BookNet Canada
How to write a Business Continuity Plan
How to write a Business Continuity Plan
Databarracks
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
Lonnie McRorey
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
LoriGlavin3
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
Fwdays
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
NavinnSomaal
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
Addepto
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
BookNet Canada
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
Florian Wilhelm
Recently uploaded
(20)
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
How to write a Business Continuity Plan
How to write a Business Continuity Plan
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
Continuous Testing
1.
Continuous Testing Eric Hogue @ehogue erichogue.ca TrueNorth
<?PHP?> Uncon November 9, 2013
2.
Cont inuo us Test ing
3.
How Dis I cov ere d it Photo: Morten
Diesen http://www.flickr.com/photos/mortendiesen/8091682612
4.
DD T Photo: William Warby http://www.flickr.com/photos/wwarby/2460655511
5.
Photo: ser... ser... http://www.flickr.com/photos/el_ser_lomo/3267627038
6.
Au to Au ma to te m Te
at the sts ed Photo: Markus http://www.flickr.com/photos/tschiae/9758986651/
7.
ed Fe ck ba
8.
Photo: Jeffrey Beall http://www.flickr.com/photos/denverjeffrey/5133538450/
9.
G rd ua
10.
lu P ns gi
11.
Guard::PHPUnit2
12.
Installation
13.
Installation Gemfile source 'https://rubygems.org' group :development
do gem 'guard' gem 'guard-phpunit2' end
14.
Installation Gemfile source 'https://rubygems.org' group :development
do gem 'guard' gem 'guard-phpunit2' end $ bundle install
15.
$ bundle exec
guard
16.
$ bundle exec
guard
17.
Guardfile guard 'phpunit2', :cli
=> '--colors' do watch(%r{^.+Test.php$}) end
18.
19.
guard 'phpunit2', :cli
=> '--colors' do watch(%r{^tests/.+Test.php$}) watch(%r{^src/(.+).php$}) { |m| "tests/#{m[1]}Test.php" } end
20.
%r{^src/(.+).php$} src/TDD/Factorial.php
21.
%r{^src/(.+).php$} src/TDD/Factorial.php "tests/#{m[1]}Test.php" phpunit tests/TDD/FactorialTest.php
22.
Photo: Luis Humberto
Molinar Márquez http://www.flickr.com/photos/anktsunamunh/3271371910/ gs tin et S
23.
:all_on_start => true
24.
:all_after_pass => true
25.
:keep_failed => true
26.
27.
Guard::PHPCS Gemfile gem 'guard-phpcs' Guardfile guard 'phpcs',
:standard => 'PSR2' do watch(%r{.*.php$}) end
28.
29.
Guard::PHPMD Gemfile gem 'guard-phpmd' Guardfile guard 'phpmd'
do watch(%r{.*.php$}) end
30.
31.
Guard::Shell Gemfile gem 'guard-shell' Guardfile guard 'shell'
do watch(%r{^.+.php$}) {|m| `php -l #{m[0]}` true } end
32.
Guard::Shell
33.
Ot Gu her ar ds
34.
Inline Guard module ::Guard class
Behat < Guard end end
35.
def start puts 'Run
all Behat tests' puts `bin/behat --format progress` end
36.
def run_on_change(paths) paths.each do
|file| puts "Running behat on #{file}" puts `bin/behat #{file} --format progress` end end
37.
guard 'behat' do watch
%r{^features/.+.feature$} end
38.
39.
40.
s n io t a c fi ti Photo: Ben Schumin http://www.flickr.com/photos/schuminweb/9806474636/ o N
41.
Libnotify/Growl Gemfile gem 'libnotify' Guardfile # Linux notification
:libnotify # Mac notification :growl
42.
43.
Console Title notification :terminal_title
44.
Console Title notification :terminal_title
45.
tmux notification :tmux, :default_message_format =>
'%s >> %s', :line_separator => ' > ', :color_location => 'status-left-bg'
46.
notification :off
47.
G rd ua
48.
Questions Comments: https://joind.in/10013 Twitter: @ehogue Blog: http://erichogue.ca/ Damián Navas http://www.flickr.com/photos/wingedwolf/5471047557/
Download now