Windows Azure Mobile Services : un backend pour vos applications mobiles en 45 min !
: croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels...
Transcript of : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels...
![Page 1: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/1.jpg)
1
Dev
oxx
2019 : croître avec
JavaScript en 2019
![Page 2: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/2.jpg)
2
Mobile Journey Marketing
David Babel@DavidLearnJS
Carles Sistare@CarlesSistare
Pas
sion
nés
by d
esig
n
Qui sommes nous ?
![Page 3: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/3.jpg)
3
Intro
duct
ion
Pourquoi sommes nous là ?
![Page 4: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/4.jpg)
4
Pla
n
Micro services
Plan de la présentation
● Croissance d’Ogury● Notre Approche micro services● Bonne pratiques techniques pour éviter la dette technique
![Page 5: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/5.jpg)
5
Par
tie 1
La croissance d’
![Page 6: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/6.jpg)
6
Consent Manager
...
User Consent
CONSENTED
SIGNALS
Data GenerationEngine
Data Generation
Insights Visualization
Active Insights User Engagement
Intelligent Monetization
Activation Solutions
Cro
issa
nce
Comprendre les contraintes
![Page 7: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/7.jpg)
7
01 02 03 04
Cro
issa
nce
Contraintes
Forte charge- 100k QPS- 2To par Jour
Temps de réponse limité10ms
Archi complexe
- 50 MServ- 60 Jobs BigData
Réactivité300 Releases par mois
![Page 8: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/8.jpg)
8
Cro
issa
nce
De Start-up à Scale-up
![Page 9: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/9.jpg)
9
2014 20 équipes 400+ dépôts
Cro
issa
nce
De Start-up à Scale-up
![Page 10: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/10.jpg)
Intro Ogury at Scale
Née en 2014
Ces valeurs sont fausses, en attentes de la finance ...
600
(objectifs)
![Page 11: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/11.jpg)
11
Source: https://lentreprise.lexpress.fr/creation-entreprise/le-top-100-des-start-up-2017-un-dynamisme-confirme_1942988.html
De
Sta
rt-up
à S
cale
-up
![Page 12: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/12.jpg)
12
Source: https://www.chefdentreprise.com/Thematique/profession-1056/Breves/OGURY-sacre-Scale-annee-2018-329610.htm
De
Sta
rt-up
à S
cale
-up
![Page 13: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/13.jpg)
13
Cloud Agile JavaScript
De
Sta
rt-up
à S
cale
-up
Ogury at Scale
![Page 14: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/14.jpg)
14
Par
tie 2 Devenir une Scale-up
avec les Microservices
![Page 15: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/15.jpg)
15
Ad Exchange
Demandede publicité
Donnée Consentie par l’utilisateur
Outils deTrading
Metriques Calculées
Milliers deCampagnesPublicitaires
Algorithmes deCiblagePublicitaire
Sca
labi
lité
Ad Exchange = Plateforme de Trading Publicitaire
![Page 16: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/16.jpg)
16
01 02 03
Sca
labi
lité
Contraintes du Scaling
Manque de fluidité d’une Architecture Microservices
Manque de scalabilité des tests d’intégration
Manque d' homogénéité d’une archi microservices
![Page 17: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/17.jpg)
17
Flui
dité
Temps de réponse hors contrôle
1. Manque de fluidité d’une architecture Microservices
Difficultés pour automatiser les tests
Interconnections complèxes
![Page 18: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/18.jpg)
18
Ad Exchange
Demandede publicité
Donnée Consentie par l’utilisateur
Outils deTrading
Metriques Calculées
Milliers deCampagnesPublicitaires
Algorithmes deCiblagePublicitaireDataServer
Kafka
Flui
dité
Ne pas reporter à demain ce que nous pouvons faire … avec Kafka
![Page 19: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/19.jpg)
19
Flui
dité
Temps de réponse hors contrôle
1. Manque de fluidité d’une architecture Microservices
Difficultés pour automatiser les tests
Interconnections complèxes
![Page 20: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/20.jpg)
20
Res
ilien
ce
On peut pas automatiser les tests
End To End
2. Manque de scalabilité des tests d’intégration
Tests d’intégration isolés avec une
cohérence assurée
Evangélisation des Best Practices de nos
Services
![Page 21: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/21.jpg)
21
01 02 03 04
R
esili
ence
Chaque service offre ses propres connecteurs
Service de Health Check Intégré
Contrats entre Services (*.proto, *.yml)
Strategie de Recovery
Service de MOCK
![Page 22: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/22.jpg)
22
mock
mock
mock
mock
mock
mockR
esili
ence
![Page 23: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/23.jpg)
23 https://github.com/couchbase/couchnode
Exemple de mock:COUCHBASER
esili
ence
![Page 24: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/24.jpg)
24
Res
ilien
ce
https://github.com/dwyl/aws-sdk-mock
Exemple de mock:AWS
![Page 25: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/25.jpg)
25
Hom
ogén
éité
Incohérence des contrats parmis les
microservices
3. Manque d'homogénéité d’une archi Microservices
Incohérence des protocols de
communication
Perte de temps de définition de synchro
entre services
![Page 26: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/26.jpg)
3. Manque de cohérence d’une archi Microservices
● Temps de réponse élevés en fonction des technos utilisés● Problèmes de typage sur des champs JSON● Complexité des connectivités entre services● Incoherence des contrats entre services
![Page 27: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/27.jpg)
27
RPC
http://bit.ly/practical-grpc
Hom
ogén
éité
![Page 28: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/28.jpg)
28
Par
tie 3
.1 Introduction auxBonnes pratiques
![Page 29: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/29.jpg)
29
Startup Nation
Bon
nes
prat
ique
s Ja
vaS
crip
t
![Page 30: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/30.jpg)
30
Startup Nation
Bon
nes
prat
ique
s Ja
vaS
crip
t
![Page 31: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/31.jpg)
31
Bon
nes
prat
ique
s Ja
vaS
crip
t
JavaScript: un allié puissant
![Page 32: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/32.jpg)
32
Bon
nes
prat
ique
s Ja
vaS
crip
t
JavaScript: un allié puissant
BackEnd Téléphone
FrontEnd Ordinateur
![Page 33: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/33.jpg)
33
Source: https://tc39.github.io/ecma262/
Bon
nes
prat
ique
s Ja
vaS
crip
t
JavaScript: un allié puissant, mais ...
![Page 34: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/34.jpg)
34
Bon
nes
prat
ique
s Ja
vaS
crip
t
JavaScript fatigue etDette technique
![Page 35: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/35.jpg)
35
Saul:Me:
Saul:Me:
Source: https://medium.com/@ericclemmons/javascript-fatigue-48d4011b6fc4
Eric Clemmons @ericclemmons Creator of React Resolver
“How’s it going?”“Fatigued.”“Family?”“No, Javascript.”
Java
Scr
ipt f
atig
ue e
tD
ette
tech
niqu
e
La JavaScript Fatigue
![Page 36: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/36.jpg)
36
Source: https://medium.com/@ericclemmons/javascript-fatigue-48d4011b6fc4
Trop de débutants sont submergés par la courbe d’apprentissage de react. Pourquoi?
Traduit de l’anglais
Ca me tue que la mise en place d'un projet JS soit si difficile. Ca m'a pris une soirée entière la dernière fois
Traduit de l’anglais
Java
Scr
ipt f
atig
ue e
tD
ette
tech
niqu
e
La JavaScript Fatigue
![Page 37: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/37.jpg)
37
Source: Gabriela Motroc : 4 tips to resist JavaScript fatigue (see)
Toute connaissance à de la valeur
Répète après moi : Les choses vont continuer à changer
Suis-je bon pour apprendre et solutionner des problèmes ?
Connaître ce que je ne connais pas
Java
Scr
ipt f
atig
ue e
tD
ette
tech
niqu
e
L’ennemi: la dette technique
![Page 38: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/38.jpg)
38
Java
Scr
ipt f
atig
ue e
tD
ette
tech
niqu
e
La dette technique
![Page 39: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/39.jpg)
39
Bon
nes
prat
ique
s et
cro
issa
nce
Au fait, c’est quoi unebonne pratique ?
![Page 40: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/40.jpg)
40
Source: Henrik Kniberg “What is Agile”
Agile
Waterfall:
:
Au
fait,
c’e
st q
uoi u
nebo
nne
prat
ique
?
Bonnes pratiques ?
![Page 41: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/41.jpg)
41
Source: Henrik Kniberg “What is Agile”
?Au
fait,
c’e
st q
uoi u
nebo
nne
prat
ique
?
Bonnes pratiques ?
![Page 42: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/42.jpg)
42
Au
fait,
c’e
st q
uoi u
nebo
nne
prat
ique
?
Bonnes pratiques ?
Transpileur ? Bundler ?
![Page 43: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/43.jpg)
43
Au
fait,
c’e
st q
uoi u
nebo
nne
prat
ique
?
Bonnes pratiques ?
Transpileur ? Bundler ?
![Page 44: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/44.jpg)
44
Source: https://en.wikipedia.org/wiki/Best_coding_practices
Au
fait,
c’e
st q
uoi u
nebo
nne
prat
ique
?
Bonnes pratiques ?
![Page 45: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/45.jpg)
45
Au
fait,
c’e
st q
uoi u
nebo
nne
prat
ique
?
Définition d’une bonne pratique
● Créer un minimum de dette technique● Reposer sur des outils stables et répandus● Etre simple pour être facile à s’approprier
![Page 46: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/46.jpg)
46
Par
tie 3
.2
Nos bonnes pratiques
![Page 47: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/47.jpg)
47
Source: Kent C. Dodds : https://testingjavascript.com/
Nos
bon
nes
prat
ique
s
Les tests automatisés
![Page 48: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/48.jpg)
48
Nos
bon
nes
prat
ique
s
Les “tests” statics
![Page 49: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/49.jpg)
49
react-testing-libraryJest
Nos
bon
nes
prat
ique
s
Les tests unitaires et d’intégration
![Page 50: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/50.jpg)
50
react-testing-libraryJest
SuperTestsno logo
Nos
bon
nes
prat
ique
s
Les tests fonctionnels
![Page 51: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/51.jpg)
51
Les tests fonctionnels
SuperTestsno logo
BlackBox
tests
validation
BackEnd
Nos
bon
nes
prat
ique
s
![Page 52: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/52.jpg)
52
BlackBox
validation
testsFrontEnd
Nos
bon
nes
prat
ique
s
Les tests fonctionnels
![Page 53: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/53.jpg)
53
Les
4 pi
liers
Les 4 piliersd’un bon projet
![Page 54: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/54.jpg)
54
readme.md
GO PROD
Les
4 pi
liers
Les 4 piliers d’un bon projet
![Page 55: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/55.jpg)
55
GO PROD
Les
4 pi
liers
L’intégration continue
![Page 56: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/56.jpg)
56
Les
4 pi
liers
Micro Services et Micro Front-end
![Page 57: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/57.jpg)
57
Source: https://micro-frontends.org/
BackEnd
FrontEnd
Les
4 pi
liers
Micro Services et Micro Front-end
![Page 58: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/58.jpg)
Source: https://micro-frontends.org/
FrontEnd
![Page 59: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/59.jpg)
59
Qua
lité
de c
ode
Qualité de code
![Page 60: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/60.jpg)
60
Qualitéde code
Source: Ryan McDermott : Clean Code Javascript (see)
Qua
lité
de c
ode
![Page 61: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/61.jpg)
61
Source: Brandon Wozniewicz : JavaScript naming conventions: do’s and don’ts (see)
Qua
lité
de c
ode
Qualité de code
![Page 62: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/62.jpg)
62
Niv
eau
1
![Page 63: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/63.jpg)
63
Niv
eau
2
![Page 64: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/64.jpg)
64
Niv
eau
3
![Page 65: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/65.jpg)
65
Niv
eau
4
![Page 66: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/66.jpg)
66
Execution :
Niv
eau
4
![Page 67: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/67.jpg)
67
Qua
lité
de c
ode
![Page 68: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/68.jpg)
68
Cory House @housecor React evangelist
Qua
lité
de c
ode
![Page 69: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/69.jpg)
69
Com
pren
dre
Java
Scr
ipt
Comprendre JavaScript
![Page 70: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/70.jpg)
70
Source: https://fr.wikipedia.org/wiki/JavaScript
Com
pren
dre
Java
Scr
ipt
Comprendre JavaScript
![Page 71: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/71.jpg)
71
Com
pren
dre
Java
Scr
ipt
Les classes
![Page 72: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/72.jpg)
72
Sophie Alpert @sophiebits Facebook React team
Source: Sophie Alpert: React Today and Tomorrow and 90% Cleaner React With Hooks (see at 10:00)
Classes are ...
Com
pren
dre
Java
Scr
ipt
Les classes
![Page 73: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/73.jpg)
73 La même chose en 20 lignes de moins
Com
pren
dre
Java
Scr
ipt
Les Modules
![Page 74: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/74.jpg)
74
?Package
Source: Naren Yellavula : Everything I know about writing modular JavaScript applications (see)
Com
pren
dre
Java
Scr
ipt
Il y avait quelques indices ...
![Page 75: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/75.jpg)
75
Com
pren
dre
Java
Scr
ipt
advertiser
![Page 76: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/76.jpg)
76
Com
pren
dre
Java
Scr
ipt
![Page 77: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/77.jpg)
77
Ou créer des alias :
On peut importer depuis le chemin de notre fichier
Com
pren
dre
Java
Scr
ipt
Les modules
![Page 78: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/78.jpg)
78
Typa
ge e
n Ja
vaS
crip
t
Typage en JavaScript
![Page 79: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/79.jpg)
79
Typa
ge e
n Ja
vaS
crip
t
TypeScript : un langage
![Page 80: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/80.jpg)
80
Source: developpez.com : les langages les plus demandés et les mieux payés (see)
JavaScript
17.8%
1.6%
* dont potentiellements quelques annonces TypeScript cachéesTy
page
en
Java
Scr
ipt
TypeScript : popularité
![Page 81: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/81.jpg)
81
Typa
ge e
n Ja
vaS
crip
t
● Types ( vous avez atteint le niveau 4 ! )
● Contrat entre front et back● Transpileur● Auto-linter efficace● Tueur de la “JavaScript fatigue”
TypeScript : la promesse
![Page 82: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/82.jpg)
200Mo500Mo
![Page 83: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/83.jpg)
83
Tool
ing
Java
Scr
ipt
Tooling JavaScript efficace
![Page 84: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/84.jpg)
84 .
Tool
ing
Java
Scr
ipt
Style de code et syntaxe
Exemple de formatage à la sauvegarde :
+ lint-staged+ husky (git hooks)
![Page 85: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/85.jpg)
85 .
Tool
ing
Java
Scr
ipt
Gestion des dépendances
Vous voulez vous autoriser à forker un projet pour en commencer un nouveau ? Execution de la commande
![Page 86: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/86.jpg)
86
Vous voulez vous débarrasser de vos dépendances inutiles ?
Tool
ing
Java
Scr
ipt
depcheck
Gestion des dépendances
.
Execution de la commande
![Page 87: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/87.jpg)
87 .
Tool
ing
Java
Scr
ipt
madge
Protection contre lesdépendances circulaires :
Dépendances circulaires
Source: Dan Kelch : Eliminate Circular Dependencies from Your JavaScript Project (see)
Execution de la commande
![Page 88: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/88.jpg)
88 .
.js
Tool
ing
Java
Scr
ipt
CI et code review
Automatisation de code review :Aperçu dans github
![Page 89: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/89.jpg)
89 .
https://risingstars.js.org
Tool
ing
Java
Scr
ipt
Une veille technique facile des librairies ?
![Page 90: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/90.jpg)
90
Con
clus
ion
Conclusion
That’s all folks
Développeurs:
● Choisissez les bons outils pour tuer la dette technique
● Faites confiance à votre tooling
Startuppers :
● Faites confiance à vos développeurs
![Page 91: : croître avec JavaScript en 2019 - Ogury · Les tests fonctionnels. 51 Les tests fonctionnels SuperTests no logo BlackBox tests validation BackEnd Nos bonnes pratiques. 52 BlackBox](https://reader034.fdocuments.fr/reader034/viewer/2022052013/60311acc891aae216e03d008/html5/thumbnails/91.jpg)
Merci de votre attention
David Babel@DavidLearnJS
Carles Sistare@CarlesSistare