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
0
150
Embrace Your Inner Grumpy: Metatesting in 2016
Presentation I gave at GPUG on January 27, 2016
Chris Hartjes
January 27, 2016
Tweet
Share
More Decks by Chris Hartjes
See All by Chris Hartjes
Confessions of a not-so-accidental leader
grumpycanuck
0
240
Lessons Learned From 10 Years Of Testing
grumpycanuck
4
140
Learn To Test Like A Grumpy Programmer
grumpycanuck
0
250
Time Management For Grumpy Programmers
grumpycanuck
0
220
Learn To Test Like A Grumpy Programmer
grumpycanuck
1
260
Learn To Test Like A Grumpy Programmer
grumpycanuck
2
210
Grumpy Testing Patterns
grumpycanuck
1
1k
Smelly Tests
grumpycanuck
0
100
Why You Can't Test
grumpycanuck
1
340
Other Decks in Technology
See All in Technology
ドメイン駆動セキュリティへの道しるべ
pandayumi
0
180
「全社導入」は結果。1人の熱狂が組織に伝播したmikanのn8n活用
sota_mikami
0
500
re:Inventで出たインフラエンジニアが嬉しかったアップデート
nagisa53
4
210
BPaaSオペレーション・kubell社内 n8n活用による効率化検証事例紹介
kentarofujii
0
300
SwiftDataを覗き見る
akidon0000
0
310
これまでのネットワーク運用を変えるかもしれないアプデをおさらい
hatahata021
4
280
Vitest Highlights in Angular
rainerhahnekamp
0
100
オープンウェイトのLLMリランカーを契約書で評価する / searchtechjp
sansan_randd
0
140
メルカリのAI活用を支えるAIセキュリティ
s3h
7
3.9k
AI アクセラレータチップ AWS Trainium/Inferentia に 今こそ入門
yoshimi0227
1
330
さくらのクラウドでのシークレット管理を考える/tamachi.sre#2
fujiwara3
1
220
新規事業における「一部だけどコア」な AI精度改善の優先順位づけ
zerebom
0
280
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
48
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
410
How to build a perfect <img>
jonoalderson
1
4.9k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1k
Discover your Explorer Soul
emna__ayadi
2
1.1k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
280
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
83
Accessibility Awareness
sabderemane
0
42
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
0
260
Test your architecture with Archunit
thirion
1
2.1k
How GitHub (no longer) Works
holman
316
140k
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