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
Testing sur code legacy
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Jean-Laurent de Morlhon
July 09, 2014
Programming
140
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Testing sur code legacy
Jean-Laurent de Morlhon
July 09, 2014
More Decks by Jean-Laurent de Morlhon
See All by Jean-Laurent de Morlhon
Retour Sur DockerCon 2016 - Docker Mega Meetup
jeanlaurent
1
140
Retour sur DockerCon 2016
jeanlaurent
2
220
Pourquoi Maurice ne doit surtout pas coder en Go.
jeanlaurent
0
190
Diamond Kata Workshop
jeanlaurent
0
200
FruitShop
jeanlaurent
3
850
Phantom, Zombie & Karma, overview of the greatest testing tools for modern web app
jeanlaurent
5
780
Live Coding Tester une Application HTML5
jeanlaurent
1
110
Testing sur Legacy Code
jeanlaurent
1
72
Le fantome, le zombie et testacular Karma. Panorama des outils de tests pour application web moderne.
jeanlaurent
1
110
Other Decks in Programming
See All in Programming
「AIで開発し、AIを届ける」をEvalでつなぐ 〜AIネイティブに始めるプロダクト開発の実践〜 / Connecting "Develop with AI, deliver AI" with Eval
rkaga
4
2.6k
AIチームを指揮するOSS「TAKT」活用術 / How to Use “TAKT,” an OSS Tool for Orchestrating AI Teams
nrslib
6
830
Make SRE Operations Easier with Azure SRE Agent
kkamegawa
0
4.2k
並列実装の現場、2ヶ月間実務でAIを使い倒したAIもPCも私も限界が近い
ming_ayami
0
110
Why Laravel apps break—Mastering the fundamentals to keep them maintainable
kentaroutakeda
1
340
AIエージェントの隔離技術の徹底比較
kawayu
0
460
権限チェックの一貫性を型で守る TypeScript による多層防御
mnch
4
1.1k
ユニットテストの先へ:テスト技法で要求・仕様を整理するJava開発実践 / Beyond_Unit_Testing_Practical_Java_Development_Techniques_for_Organizing_Requirements_and_Specifications
shimashima35
0
350
Language Server 使ってる? 〜VSCode と Zed の場合〜 / Are you using a Language Server? ~For VS Code and Zed~
handlename
0
760
Lessons from Spec-Driven Development
simas
PRO
0
140
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
3
1.1k
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
460
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
Odyssey Design
rkendrick25
PRO
2
690
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
570
Chasing Engaging Ingredients in Design
codingconduct
0
210
Balancing Empowerment & Direction
lara
6
1.1k
Tell your own story through comics
letsgokoyo
1
950
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
600
Writing Fast Ruby
sferik
630
63k
SEO for Brand Visibility & Recognition
aleyda
0
4.6k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
240
Raft: Consensus for Rubyists
vanstee
141
7.5k
Transcript
TESTING SUR CODE LEGACY Jean-Laurent de Morlhon
LEGACY CODE ? Un système en production Manque de maintenance
Manque de tests Customization Locking Pas de source
PYRAMIDE DES TESTS Tests unitaires Tests d'intégrations e2e 1-5% 5-15%
80-90% + - Temps Complexité Fragilité
PYRAMIDE DES TESTS 0-5% 5-15% 80-90% + - Temps Complexité
Fragilité e2e Tests d'intégrations Tests unitaires
INVERSER LA PYRAMIDE e2e Tests d'intégrations Tests unitaires Tests unitaires
Tests d'intégrations e2e Système legacy Système sous contrôle
INVERSER LA PYRAMIDE 4 règles du design simple Attitude Boy
Scout Rule Appropriation collective du code Politique de tests Design émergent
4 RÈGLES DU DESIGN SIMPLE 1.Tous les tests passent 2.Révèle
ton intention 3.Evite la duplication 4.Petites classes & petites méthodes
TOUT EST LIÉ
GILDED ROSE https://github.com/xebia-france/gildedrose-kata Exercice de refactoring sur legacy Par binôme
Tentez une technique Vous êtes la pour expérimenter, apprendre Pas pour "gagner" l'exercice. Niveau: moyen 1h30
CODE BASE c# https://github.com/NotMyself/GildedRose Objective-C https://github.com/isilien/GildedRose-Objc JavaScript, Ruby and more
https://github.com/emilybache/GildedRose-Refactoring-Kata