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
160
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
290
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
370
Other Decks in Technology
See All in Technology
Forza Horizon 6 のテレメトリ機能で 自動運転に使えそうな学習データを集める話
henjin0
0
150
ブラウザ研修 2026
recruitengineers
PRO
5
800
サイバー捜査員研修(前半)
nomizone
1
1.9k
FORENSIA: ローカルLLMフォレンジックハーネス
sumeshi
2
360
【CEDEC2026】専門性の高いデフォルメチームが挑んだ人材育成戦略 〜Cygames Academiaの企画から実施まで〜
cygames
PRO
0
530
ボトムアップ文化が強い組織で セキュリティをどう根付かせていくかの現在進行形の話 / Making Security Stick in a Bottom-Up Organization
yamaguchitk333
0
210
AI駆動開発は個人技からチーム戦へ:組織でAIを使いこなすための実践設計
moongift
PRO
0
480
Software Supply Chain Attackからクラウド環境を守るためにできること
lhazy
2
220
修正PRを食べてレビュースキルが賢くなる:Claude Codeによる自己改善サイクル
yuyaumetsu
6
1.4k
Webアクセシビリティ入門 2026
recruitengineers
PRO
3
460
侵入は突然に 〜 IoTマルウェアと悪用される家庭の機器 ~ / When Intrusion Strikes: IoT Malware and the Abuse of Home Devices
nttcom
0
1.6k
メルカリのグローバルアプリで挑んだ AlloyDB 運用と課題解決の実践記
hatappi
0
240
Featured
See All Featured
Designing Powerful Visuals for Engaging Learning
tmiket
1
480
Visualization
eitanlees
152
17k
Amusing Abliteration
ianozsvald
1
240
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
250
A Modern Web Designer's Workflow
chriscoyier
698
190k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
270
Making Projects Easy
brettharned
120
6.7k
GitHub's CSS Performance
jonrohan
1033
470k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
440
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
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