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
Embrace Your Inner Grumpy: Metatesting in 2016
Search
Chris Hartjes
January 27, 2016
Technology
160
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Embrace Your Inner Grumpy: Metatesting in 2016
Presentation I gave at GPUG on January 27, 2016
Chris Hartjes
January 27, 2016
More Decks by Chris Hartjes
See All by Chris Hartjes
Confessions of a not-so-accidental leader
grumpycanuck
0
270
Lessons Learned From 10 Years Of Testing
grumpycanuck
4
170
Learn To Test Like A Grumpy Programmer
grumpycanuck
0
270
Time Management For Grumpy Programmers
grumpycanuck
0
240
Learn To Test Like A Grumpy Programmer
grumpycanuck
1
300
Learn To Test Like A Grumpy Programmer
grumpycanuck
2
230
Grumpy Testing Patterns
grumpycanuck
1
1k
Smelly Tests
grumpycanuck
0
130
Why You Can't Test
grumpycanuck
1
380
Other Decks in Technology
See All in Technology
AWSとAzureのマルチクラウド活用における強い味方___AWS_Kiroを使った二刀流スキル作成.pdf
duelist2020jp
1
140
Master Dataグループ紹介資料
sansan33
PRO
1
4.8k
8bit CPU 2026
koba789
7
3k
分割40%キーボードにスムーズに入門するには
hoto17296
1
180
VPCでもFloatingIPを使いたいんだ
y_kotani
1
130
『自分で判断できるか』を基準に、プロダクトのハンズオン研修でAI利用の線を引いてみた / Where We Drew the Line on AI in Hands-on Training
honyanya
1
440
現場の暗黙知を継承するAIエージェント — 対話から生まれる長期記憶と Skills
atsukish
0
130
ハッカソンで入賞した話 @ Findy LT
asari194617
0
1.5k
MCPを待つな、パスキーを拡げよう(OAuth/OIDC Numa (Immersion) Workshop 2026)
oidfj
PRO
0
350
Point Cloud as a Foreign Language for Multi-modal Large Language Model
takmin
0
300
医療の現場を変革に挑戦した半年間の軌跡 - PythonとAIで現場を変える / From Code to Care
soudai
PRO
1
640
アクセスキーが漏れた日にやるべきこと- 無効化の先にある本当の対応
kazzpapa3
0
360
Featured
See All Featured
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
390
Testing 201, or: Great Expectations
jmmastey
46
8.2k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.4k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.5k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
The Spectacular Lies of Maps
axbom
PRO
1
950
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
360
Technical Leadership for Architectural Decision Making
baasie
3
540
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.1k
How to Ace a Technical Interview
jacobian
281
24k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
950
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
42k
Transcript
Embrace Your Inner Grumpy Metatesting in 2016 Chris Hartjes GPUG
- January 27, 2016
A little something about me • PHP user since 1998
• testing advocate since 2004 • writer of PHP books at http://grumpy-learning.com • working at Mozilla as QA engineer in Cloud Services • organize TrueNorthPHP • /dev/hell podcast • OpenCFP head honcho
What is Metatesting?
It starts with… Magic: The Gathering?
Mature Testing Tools Are Available
Mature Testing Tools • PHPUnit — http://phpunit.de • Behat —
http://behat.org • PHPSpec — http://www.phpspec • Codeception — http://codeception.com
Mature Testing Tools • Don’t reinvent mature tools • Extend
them for your own needs
Open Source Drives Acceptance
Open Source • Every popular framework has extensive test suites
• Lack of tests speaks volumes about intent • Great entry point into contributing
Proof Exists To Back The Promises
Proof Exists • Study commissioned by IBM and Microsoft •
White paper -> http://research.microsoft.com/en- us/groups/ese/nagappan_tdd.pdf
Proof Exists • TDD clearly takes more time… • …but
results in fewer bugs in production
“Hey boss, for just one extra day per week on
this project we can get up to 90% fewer bugs making it into production”
Testing Moves Bugs To A Cheaper Phase
Cheaper Fixes • cheapest time to fix bugs is when
the developer finds them during their work • cost of bugs needs to be evaluated as multiples of developer costs
Cheaper Fixes • cultural costs • opportunity costs
Build Systems Are Finally Easy To Use
Build Systems • Jenkins — https://jenkins-ci.org • Travis-CI — https://travis-ci.org
Build Systems • Great side effects • Highlights pain points
Awesome Complementary Tools
Complementary Tools • code coverage • static analysis
Complementary Tools • Code Climate — https://codeclimate.com • Scrutinizer —
https://scrutinizer-ci.com
“Tracking improvements via tests lets you know the team is
on track and doing good work.”
It will never be more difficult to test PHP code
The time investment in tests produces tangible results
I still suck at Magic but are good at Metatesting
Questions?
[email protected]
Twitter - @grmpyprogrammer Buy my stuff at http://grumpy-learning.com