SlideShare a Scribd company logo
1 of 24
Download to read offline
BreizhCamp 2015 #BzhCmp
Refactoring avec 1,22% de
code couvert par les tests …
Golden Master Testing
à la rescousse !
Sébastien Prunier - @sebprunier
<me/>
Sébastien Prunier
@sebprunier
Développeur chez SERLI
www.devconferences.org
Nantes JUG
Il était une fois ...
SGBDR
BatchLogiciel de gestion
JSON
SaaS
upload
write
read
Il faut faire la v2 !
Batch
(age = 3 mois)
TODO
v2
Quelques métriques
10 000
lignes de code
Quelques métriques
1
test unitaire
Quelques métriques
1,22%
de code couvert
par les tests
Constat
Je vois du code legacy ...
Comment faire ?
Solution 1
“Tester c’est douter”
Comment faire ?
Solution 2
Tests unitaires, mocks et base
embarquée (HSQLDB)
Comment faire ?
Solution 3
Golden Master Testing
- Déterminer le comportement du programme
- Exécuter avec un large jeu de données
- Stocker les résultats → Gloden Master
- Refactorer, exécuter et comparer au master
Jeu de données
"Exécuter avec un large jeu de données"
Le jeu de données
"Cool, il y a des recettes en cours !"
SGBDR
Logiciel de gestion
SGBDR
reference
snapshot
Golden Master Test
1 - Création du Golden Master
SGBDR
reference
JSON
Batch
read
write
Golden
Master
~ 70 000 fichiers
Golden Master Test
2 - Copie du batch
SGBDR
reference
JSON
Batch
read
write
Golden
Master
Batch (copy)
copy
Golden Master Test
3 - Exécution de la copie du batch
SGBDR
reference
JSON
Batch
read
write
Golden
Master
Batch (copy)
copy
read
JSON
write
Golden Master Test
4 - Comparaison au Golden Master
SGBDR
reference
JSON
Batch
read
write
Golden
Master
Batch (copy)
copy
read
JSON
write
compare
Assertions (1/3)
Guava
TreeTraverser<File>
Assertions (2/3)
AssertJ
assertThat(refactoredFile).hasContentEqualTo(masterFile)
Assertions (3/3)
for (File masterFile :
Files.fileTreeTraverser().preOrderTraversal(masterOutput)) {
File refactoredFile = new File(
masterFile.getPath().replace(
masterOutputPath,
refactoredOutputPath
)
);
assertThat(refactoredFile).exists();
if (masterFile.isFile()) {
assertThat(refactoredFile).hasContentEqualTo(masterFile);
}
}
Exécution
couverture > 85%
durée d’exécution ~ 30 sec
Infinitest dans Intellij
Jenkins
Conclusion
Golden Master Test
= approche simple et efficace
The end is near
Merci !
Questions ?
Liens
● http://blog.sebprunier.com/code/testing/golden-master-testing-refactoring/
● https://github.com/google/guava
● http://joel-costigliola.github.io/assertj/
● https://plus.google.com/+TheSimpsons

More Related Content

What's hot

Hadoop et son écosystème - v2
Hadoop et son écosystème - v2Hadoop et son écosystème - v2
Hadoop et son écosystème - v2Khanh Maudoux
 
Découvrez les nouveautés produits Nuxeo
Découvrez les nouveautés produits NuxeoDécouvrez les nouveautés produits Nuxeo
Découvrez les nouveautés produits NuxeoNuxeo
 
Perfug Guide de survie du développeur dans une application Java qui rame
Perfug Guide de survie du développeur dans une application Java qui ramePerfug Guide de survie du développeur dans une application Java qui rame
Perfug Guide de survie du développeur dans une application Java qui ramebleporini
 
Node.js et MongoDB: Mongoose
Node.js et MongoDB: MongooseNode.js et MongoDB: Mongoose
Node.js et MongoDB: Mongoosejeromegn
 
Poitou Charentes JUG - Traçabilité dans une architecture distribuée avec Node...
Poitou Charentes JUG - Traçabilité dans une architecture distribuée avec Node...Poitou Charentes JUG - Traçabilité dans une architecture distribuée avec Node...
Poitou Charentes JUG - Traçabilité dans une architecture distribuée avec Node...Sébastien Prunier
 
Meetup Google Cloud
Meetup Google CloudMeetup Google Cloud
Meetup Google CloudPierre Coste
 
De 20 000 à 4 millions d'utilisateurs : mode d'emploi
De 20 000 à 4 millions d'utilisateurs : mode d'emploiDe 20 000 à 4 millions d'utilisateurs : mode d'emploi
De 20 000 à 4 millions d'utilisateurs : mode d'emploiKhanh Maudoux
 
Perf ug comment ne plus rajouter de ram a vos jvm sans savoir pourquoi
Perf ug   comment ne plus rajouter de ram a vos jvm sans savoir pourquoiPerf ug   comment ne plus rajouter de ram a vos jvm sans savoir pourquoi
Perf ug comment ne plus rajouter de ram a vos jvm sans savoir pourquoipkernevez
 
Pachyderm big data de l'ère docker
Pachyderm big data de l'ère dockerPachyderm big data de l'ère docker
Pachyderm big data de l'ère dockerEnguerran Delahaie
 
Migrer une application existante vers Elasticsearch - Nuxeo Tour 2014 - workshop
Migrer une application existante vers Elasticsearch - Nuxeo Tour 2014 - workshopMigrer une application existante vers Elasticsearch - Nuxeo Tour 2014 - workshop
Migrer une application existante vers Elasticsearch - Nuxeo Tour 2014 - workshopNuxeo
 

What's hot (14)

Hadoop unit
Hadoop unitHadoop unit
Hadoop unit
 
Hadoop et son écosystème - v2
Hadoop et son écosystème - v2Hadoop et son écosystème - v2
Hadoop et son écosystème - v2
 
Découvrez les nouveautés produits Nuxeo
Découvrez les nouveautés produits NuxeoDécouvrez les nouveautés produits Nuxeo
Découvrez les nouveautés produits Nuxeo
 
Compte rendu crontab
Compte rendu crontabCompte rendu crontab
Compte rendu crontab
 
Perfug Guide de survie du développeur dans une application Java qui rame
Perfug Guide de survie du développeur dans une application Java qui ramePerfug Guide de survie du développeur dans une application Java qui rame
Perfug Guide de survie du développeur dans une application Java qui rame
 
Node.js et MongoDB: Mongoose
Node.js et MongoDB: MongooseNode.js et MongoDB: Mongoose
Node.js et MongoDB: Mongoose
 
Poitou Charentes JUG - Traçabilité dans une architecture distribuée avec Node...
Poitou Charentes JUG - Traçabilité dans une architecture distribuée avec Node...Poitou Charentes JUG - Traçabilité dans une architecture distribuée avec Node...
Poitou Charentes JUG - Traçabilité dans une architecture distribuée avec Node...
 
Zenika MongoDB Tour - REX Amadeus
Zenika MongoDB Tour - REX AmadeusZenika MongoDB Tour - REX Amadeus
Zenika MongoDB Tour - REX Amadeus
 
Meetup Google Cloud
Meetup Google CloudMeetup Google Cloud
Meetup Google Cloud
 
Hadoop unit
Hadoop unitHadoop unit
Hadoop unit
 
De 20 000 à 4 millions d'utilisateurs : mode d'emploi
De 20 000 à 4 millions d'utilisateurs : mode d'emploiDe 20 000 à 4 millions d'utilisateurs : mode d'emploi
De 20 000 à 4 millions d'utilisateurs : mode d'emploi
 
Perf ug comment ne plus rajouter de ram a vos jvm sans savoir pourquoi
Perf ug   comment ne plus rajouter de ram a vos jvm sans savoir pourquoiPerf ug   comment ne plus rajouter de ram a vos jvm sans savoir pourquoi
Perf ug comment ne plus rajouter de ram a vos jvm sans savoir pourquoi
 
Pachyderm big data de l'ère docker
Pachyderm big data de l'ère dockerPachyderm big data de l'ère docker
Pachyderm big data de l'ère docker
 
Migrer une application existante vers Elasticsearch - Nuxeo Tour 2014 - workshop
Migrer une application existante vers Elasticsearch - Nuxeo Tour 2014 - workshopMigrer une application existante vers Elasticsearch - Nuxeo Tour 2014 - workshop
Migrer une application existante vers Elasticsearch - Nuxeo Tour 2014 - workshop
 

Viewers also liked

Rougail saucisses
Rougail saucissesRougail saucisses
Rougail saucisseselol3fle
 
Le néolithique de méditerranée et d'afrique
Le néolithique de méditerranée et d'afrique Le néolithique de méditerranée et d'afrique
Le néolithique de méditerranée et d'afrique Talia Shka
 
La veille de Red Guy du 03.09.14 - les mathématiques
La veille de Red Guy du 03.09.14 - les mathématiquesLa veille de Red Guy du 03.09.14 - les mathématiques
La veille de Red Guy du 03.09.14 - les mathématiquesRed Guy
 
La phase 3 de finalisation
La phase 3 de finalisationLa phase 3 de finalisation
La phase 3 de finalisationjguivarch
 
Respondemos a tus dudas. cirugía plástica y estética dr humberto gacitúa gars...
Respondemos a tus dudas. cirugía plástica y estética dr humberto gacitúa gars...Respondemos a tus dudas. cirugía plástica y estética dr humberto gacitúa gars...
Respondemos a tus dudas. cirugía plástica y estética dr humberto gacitúa gars...Cirugía Estética y Spa
 
conférence: Community Manager qui es tu ?
conférence: Community Manager qui es tu ?conférence: Community Manager qui es tu ?
conférence: Community Manager qui es tu ?Lionel Fumado
 
Presentació Comunicació Empresarial
Presentació Comunicació EmpresarialPresentació Comunicació Empresarial
Presentació Comunicació EmpresarialAnna Roca
 
Los animales
Los animales Los animales
Los animales Carbayu
 
Courdimanche demain... la suite ! - Présentation du 30 juin 2011
Courdimanche demain... la suite ! - Présentation du 30 juin 2011Courdimanche demain... la suite ! - Présentation du 30 juin 2011
Courdimanche demain... la suite ! - Présentation du 30 juin 2011courdimanche95
 
Rougail saucisses
Rougail saucissesRougail saucisses
Rougail saucisseselol3fle
 
#1 Meetup Azendoo Paris 10 sept14
#1 Meetup Azendoo Paris 10 sept14#1 Meetup Azendoo Paris 10 sept14
#1 Meetup Azendoo Paris 10 sept14Azendoo
 
Les vacances-fêtes
 Les vacances-fêtes Les vacances-fêtes
Les vacances-fêtesCurrante
 
Présentation staff 2013
Présentation staff 2013Présentation staff 2013
Présentation staff 2013kparticu
 
Colloque Oujda Presentation Ouadi
Colloque Oujda  Presentation OuadiColloque Oujda  Presentation Ouadi
Colloque Oujda Presentation OuadiYoussef OUADI
 
Yunpeng Cailliang
Yunpeng CailliangYunpeng Cailliang
Yunpeng CailliangChinois
 
D2 - Je voudrais être agile, mais je ne peux pas parce que...
D2 - Je voudrais être agile, mais je ne peux pas parce que...D2 - Je voudrais être agile, mais je ne peux pas parce que...
D2 - Je voudrais être agile, mais je ne peux pas parce que...XP Day CH
 

Viewers also liked (20)

Rougail saucisses
Rougail saucissesRougail saucisses
Rougail saucisses
 
Le néolithique de méditerranée et d'afrique
Le néolithique de méditerranée et d'afrique Le néolithique de méditerranée et d'afrique
Le néolithique de méditerranée et d'afrique
 
La veille de Red Guy du 03.09.14 - les mathématiques
La veille de Red Guy du 03.09.14 - les mathématiquesLa veille de Red Guy du 03.09.14 - les mathématiques
La veille de Red Guy du 03.09.14 - les mathématiques
 
La phase 3 de finalisation
La phase 3 de finalisationLa phase 3 de finalisation
La phase 3 de finalisation
 
Respondemos a tus dudas. cirugía plástica y estética dr humberto gacitúa gars...
Respondemos a tus dudas. cirugía plástica y estética dr humberto gacitúa gars...Respondemos a tus dudas. cirugía plástica y estética dr humberto gacitúa gars...
Respondemos a tus dudas. cirugía plástica y estética dr humberto gacitúa gars...
 
Infografia fanny
Infografia fannyInfografia fanny
Infografia fanny
 
conférence: Community Manager qui es tu ?
conférence: Community Manager qui es tu ?conférence: Community Manager qui es tu ?
conférence: Community Manager qui es tu ?
 
Reunioninicial4anos
Reunioninicial4anosReunioninicial4anos
Reunioninicial4anos
 
Presentació Comunicació Empresarial
Presentació Comunicació EmpresarialPresentació Comunicació Empresarial
Presentació Comunicació Empresarial
 
Los animales
Los animales Los animales
Los animales
 
Courdimanche demain... la suite ! - Présentation du 30 juin 2011
Courdimanche demain... la suite ! - Présentation du 30 juin 2011Courdimanche demain... la suite ! - Présentation du 30 juin 2011
Courdimanche demain... la suite ! - Présentation du 30 juin 2011
 
Rougail saucisses
Rougail saucissesRougail saucisses
Rougail saucisses
 
#1 Meetup Azendoo Paris 10 sept14
#1 Meetup Azendoo Paris 10 sept14#1 Meetup Azendoo Paris 10 sept14
#1 Meetup Azendoo Paris 10 sept14
 
Les vacances-fêtes
 Les vacances-fêtes Les vacances-fêtes
Les vacances-fêtes
 
Présentation staff 2013
Présentation staff 2013Présentation staff 2013
Présentation staff 2013
 
Colloque Oujda Presentation Ouadi
Colloque Oujda  Presentation OuadiColloque Oujda  Presentation Ouadi
Colloque Oujda Presentation Ouadi
 
2001
20012001
2001
 
Yunpeng Cailliang
Yunpeng CailliangYunpeng Cailliang
Yunpeng Cailliang
 
D2 - Je voudrais être agile, mais je ne peux pas parce que...
D2 - Je voudrais être agile, mais je ne peux pas parce que...D2 - Je voudrais être agile, mais je ne peux pas parce que...
D2 - Je voudrais être agile, mais je ne peux pas parce que...
 
Murmure28 8juin
Murmure28 8juinMurmure28 8juin
Murmure28 8juin
 

Similar to [Breizhcamp 2015] Refactoring avec 1,22% de code couvert par les tests ... Golden Master testing à la rescousse !

Introduction à Google App Engine - WAQ 2011
Introduction à Google App Engine - WAQ 2011Introduction à Google App Engine - WAQ 2011
Introduction à Google App Engine - WAQ 2011jimmybourassa
 
Présentation Rex GWT 2.0
Présentation Rex GWT 2.0Présentation Rex GWT 2.0
Présentation Rex GWT 2.0Ippon
 
Techniques de programmation avancée LabVIEW : gestion des données de la local...
Techniques de programmation avancée LabVIEW : gestion des données de la local...Techniques de programmation avancée LabVIEW : gestion des données de la local...
Techniques de programmation avancée LabVIEW : gestion des données de la local...Luc Desruelle
 
Mesurer la performance dans le milieu hostile du développement Java
Mesurer la performance dans le milieu hostile du développement JavaMesurer la performance dans le milieu hostile du développement Java
Mesurer la performance dans le milieu hostile du développement JavaAntonio Gomes Rodrigues
 
Comment passer d'un POC en prod @ plusieurs milliards de rêquetes
Comment passer d'un POC en prod @ plusieurs milliards de rêquetesComment passer d'un POC en prod @ plusieurs milliards de rêquetes
Comment passer d'un POC en prod @ plusieurs milliards de rêquetesCarles Sistare
 
Optimisations et Performances d'un POC en prod @ plusieurs milliards de requê...
Optimisations et Performances d'un POC en prod @ plusieurs milliards de requê...Optimisations et Performances d'un POC en prod @ plusieurs milliards de requê...
Optimisations et Performances d'un POC en prod @ plusieurs milliards de requê...David Caramelo
 
What we've learnt from Ember.js - The family talk april 2015
What we've learnt from Ember.js - The family talk april 2015What we've learnt from Ember.js - The family talk april 2015
What we've learnt from Ember.js - The family talk april 2015Wisembly
 
"What we've learnt from Ember.js developing our new product" by Guillaume Pot...
"What we've learnt from Ember.js developing our new product" by Guillaume Pot..."What we've learnt from Ember.js developing our new product" by Guillaume Pot...
"What we've learnt from Ember.js developing our new product" by Guillaume Pot...TheFamily
 
Integration continue - Introduction
Integration continue - IntroductionIntegration continue - Introduction
Integration continue - IntroductionOlivier ETIENNE
 
Le futur de AngularJS (2.0)
Le futur de AngularJS (2.0)Le futur de AngularJS (2.0)
Le futur de AngularJS (2.0)Clément Dubois
 
D’un modèle d'IA dans un notebook à un service temps réel : architecturons !
D’un modèle d'IA dans un notebook à un service temps réel : architecturons ! D’un modèle d'IA dans un notebook à un service temps réel : architecturons !
D’un modèle d'IA dans un notebook à un service temps réel : architecturons ! Marie-Alice Blete
 
Iut agile lyon 20 nov. 2013 - bdd
Iut agile lyon   20 nov. 2013 - bddIut agile lyon   20 nov. 2013 - bdd
Iut agile lyon 20 nov. 2013 - bddagnes_crepet
 
Eco Conception logicielle : Comment réduire par deux la consommation d&rsquo;...
Eco Conception logicielle : Comment réduire par deux la consommation d&rsquo;...Eco Conception logicielle : Comment réduire par deux la consommation d&rsquo;...
Eco Conception logicielle : Comment réduire par deux la consommation d&rsquo;...Microsoft
 
Sur le chemin de la qualité - GDG Lille
Sur le chemin de la qualité - GDG LilleSur le chemin de la qualité - GDG Lille
Sur le chemin de la qualité - GDG LilleJulien Jakubowski
 
CocoaHeads Toulouse - Xcode et les tests - Epitez
CocoaHeads Toulouse - Xcode et les tests - EpitezCocoaHeads Toulouse - Xcode et les tests - Epitez
CocoaHeads Toulouse - Xcode et les tests - EpitezCocoaHeads France
 
Présentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisésPrésentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisésDjamel Zouaoui
 
[Breizhcamp 2015] MongoDB et Elastic, meilleurs ennemis ?
[Breizhcamp 2015] MongoDB et Elastic, meilleurs ennemis ?[Breizhcamp 2015] MongoDB et Elastic, meilleurs ennemis ?
[Breizhcamp 2015] MongoDB et Elastic, meilleurs ennemis ?Sébastien Prunier
 
Forum PHP 2007 - Methodes Agiles
Forum PHP 2007 - Methodes AgilesForum PHP 2007 - Methodes Agiles
Forum PHP 2007 - Methodes Agilesgoldoraf
 

Similar to [Breizhcamp 2015] Refactoring avec 1,22% de code couvert par les tests ... Golden Master testing à la rescousse ! (20)

Introduction à Google App Engine - WAQ 2011
Introduction à Google App Engine - WAQ 2011Introduction à Google App Engine - WAQ 2011
Introduction à Google App Engine - WAQ 2011
 
Présentation Rex GWT 2.0
Présentation Rex GWT 2.0Présentation Rex GWT 2.0
Présentation Rex GWT 2.0
 
Techniques de programmation avancée LabVIEW : gestion des données de la local...
Techniques de programmation avancée LabVIEW : gestion des données de la local...Techniques de programmation avancée LabVIEW : gestion des données de la local...
Techniques de programmation avancée LabVIEW : gestion des données de la local...
 
Mesurer la performance dans le milieu hostile du développement Java
Mesurer la performance dans le milieu hostile du développement JavaMesurer la performance dans le milieu hostile du développement Java
Mesurer la performance dans le milieu hostile du développement Java
 
Comment passer d'un POC en prod @ plusieurs milliards de rêquetes
Comment passer d'un POC en prod @ plusieurs milliards de rêquetesComment passer d'un POC en prod @ plusieurs milliards de rêquetes
Comment passer d'un POC en prod @ plusieurs milliards de rêquetes
 
Optimisations et Performances d'un POC en prod @ plusieurs milliards de requê...
Optimisations et Performances d'un POC en prod @ plusieurs milliards de requê...Optimisations et Performances d'un POC en prod @ plusieurs milliards de requê...
Optimisations et Performances d'un POC en prod @ plusieurs milliards de requê...
 
What we've learnt from Ember.js - The family talk april 2015
What we've learnt from Ember.js - The family talk april 2015What we've learnt from Ember.js - The family talk april 2015
What we've learnt from Ember.js - The family talk april 2015
 
"What we've learnt from Ember.js developing our new product" by Guillaume Pot...
"What we've learnt from Ember.js developing our new product" by Guillaume Pot..."What we've learnt from Ember.js developing our new product" by Guillaume Pot...
"What we've learnt from Ember.js developing our new product" by Guillaume Pot...
 
Docker.
Docker.Docker.
Docker.
 
Integration continue - Introduction
Integration continue - IntroductionIntegration continue - Introduction
Integration continue - Introduction
 
Le futur de AngularJS (2.0)
Le futur de AngularJS (2.0)Le futur de AngularJS (2.0)
Le futur de AngularJS (2.0)
 
D’un modèle d'IA dans un notebook à un service temps réel : architecturons !
D’un modèle d'IA dans un notebook à un service temps réel : architecturons ! D’un modèle d'IA dans un notebook à un service temps réel : architecturons !
D’un modèle d'IA dans un notebook à un service temps réel : architecturons !
 
Iut agile lyon 20 nov. 2013 - bdd
Iut agile lyon   20 nov. 2013 - bddIut agile lyon   20 nov. 2013 - bdd
Iut agile lyon 20 nov. 2013 - bdd
 
Mockito Chti JUG
Mockito Chti JUGMockito Chti JUG
Mockito Chti JUG
 
Eco Conception logicielle : Comment réduire par deux la consommation d&rsquo;...
Eco Conception logicielle : Comment réduire par deux la consommation d&rsquo;...Eco Conception logicielle : Comment réduire par deux la consommation d&rsquo;...
Eco Conception logicielle : Comment réduire par deux la consommation d&rsquo;...
 
Sur le chemin de la qualité - GDG Lille
Sur le chemin de la qualité - GDG LilleSur le chemin de la qualité - GDG Lille
Sur le chemin de la qualité - GDG Lille
 
CocoaHeads Toulouse - Xcode et les tests - Epitez
CocoaHeads Toulouse - Xcode et les tests - EpitezCocoaHeads Toulouse - Xcode et les tests - Epitez
CocoaHeads Toulouse - Xcode et les tests - Epitez
 
Présentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisésPrésentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisés
 
[Breizhcamp 2015] MongoDB et Elastic, meilleurs ennemis ?
[Breizhcamp 2015] MongoDB et Elastic, meilleurs ennemis ?[Breizhcamp 2015] MongoDB et Elastic, meilleurs ennemis ?
[Breizhcamp 2015] MongoDB et Elastic, meilleurs ennemis ?
 
Forum PHP 2007 - Methodes Agiles
Forum PHP 2007 - Methodes AgilesForum PHP 2007 - Methodes Agiles
Forum PHP 2007 - Methodes Agiles
 

More from Sébastien Prunier

De votre idée géniale à votre Minimum Viable Product - Café Techno Niort ...
De votre idée géniale à votre Minimum Viable Product - Café Techno Niort ...De votre idée géniale à votre Minimum Viable Product - Café Techno Niort ...
De votre idée géniale à votre Minimum Viable Product - Café Techno Niort ...Sébastien Prunier
 
De votre idée géniale à votre Minimum Viable Product - Rencontres National...
De votre idée géniale à votre Minimum Viable Product - Rencontres National...De votre idée géniale à votre Minimum Viable Product - Rencontres National...
De votre idée géniale à votre Minimum Viable Product - Rencontres National...Sébastien Prunier
 
MongoDB et Elasticsearch, meilleurs ennemis ?
MongoDB et Elasticsearch, meilleurs ennemis ?MongoDB et Elasticsearch, meilleurs ennemis ?
MongoDB et Elasticsearch, meilleurs ennemis ?Sébastien Prunier
 
MongoDB Aggregation Framework in action !
MongoDB Aggregation Framework in action !MongoDB Aggregation Framework in action !
MongoDB Aggregation Framework in action !Sébastien Prunier
 
Nantes JUG - Les News - 2013-10-10
Nantes JUG - Les News - 2013-10-10Nantes JUG - Les News - 2013-10-10
Nantes JUG - Les News - 2013-10-10Sébastien Prunier
 
JugSummerCamp 2013 - Un backend NoSQL pour Geektic avec MongoDB
JugSummerCamp 2013 - Un backend NoSQL pour Geektic avec MongoDBJugSummerCamp 2013 - Un backend NoSQL pour Geektic avec MongoDB
JugSummerCamp 2013 - Un backend NoSQL pour Geektic avec MongoDBSébastien Prunier
 
Nantes JUG - Traçabilité dans une architecture distribuée avec Node.js et Mon...
Nantes JUG - Traçabilité dans une architecture distribuée avec Node.js et Mon...Nantes JUG - Traçabilité dans une architecture distribuée avec Node.js et Mon...
Nantes JUG - Traçabilité dans une architecture distribuée avec Node.js et Mon...Sébastien Prunier
 
Add BPM to your business applications with Bonita Open Solution - JugSummerCa...
Add BPM to your business applications with Bonita Open Solution - JugSummerCa...Add BPM to your business applications with Bonita Open Solution - JugSummerCa...
Add BPM to your business applications with Bonita Open Solution - JugSummerCa...Sébastien Prunier
 

More from Sébastien Prunier (9)

De votre idée géniale à votre Minimum Viable Product - Café Techno Niort ...
De votre idée géniale à votre Minimum Viable Product - Café Techno Niort ...De votre idée géniale à votre Minimum Viable Product - Café Techno Niort ...
De votre idée géniale à votre Minimum Viable Product - Café Techno Niort ...
 
De votre idée géniale à votre Minimum Viable Product - Rencontres National...
De votre idée géniale à votre Minimum Viable Product - Rencontres National...De votre idée géniale à votre Minimum Viable Product - Rencontres National...
De votre idée géniale à votre Minimum Viable Product - Rencontres National...
 
MongoDB et Elasticsearch, meilleurs ennemis ?
MongoDB et Elasticsearch, meilleurs ennemis ?MongoDB et Elasticsearch, meilleurs ennemis ?
MongoDB et Elasticsearch, meilleurs ennemis ?
 
MongoDB Aggregation Framework in action !
MongoDB Aggregation Framework in action !MongoDB Aggregation Framework in action !
MongoDB Aggregation Framework in action !
 
Nantes JUG - Les News - 2013-10-10
Nantes JUG - Les News - 2013-10-10Nantes JUG - Les News - 2013-10-10
Nantes JUG - Les News - 2013-10-10
 
JugSummerCamp 2013 - Un backend NoSQL pour Geektic avec MongoDB
JugSummerCamp 2013 - Un backend NoSQL pour Geektic avec MongoDBJugSummerCamp 2013 - Un backend NoSQL pour Geektic avec MongoDB
JugSummerCamp 2013 - Un backend NoSQL pour Geektic avec MongoDB
 
Nantes JUG - Traçabilité dans une architecture distribuée avec Node.js et Mon...
Nantes JUG - Traçabilité dans une architecture distribuée avec Node.js et Mon...Nantes JUG - Traçabilité dans une architecture distribuée avec Node.js et Mon...
Nantes JUG - Traçabilité dans une architecture distribuée avec Node.js et Mon...
 
Add BPM to your business applications with Bonita Open Solution - JugSummerCa...
Add BPM to your business applications with Bonita Open Solution - JugSummerCa...Add BPM to your business applications with Bonita Open Solution - JugSummerCa...
Add BPM to your business applications with Bonita Open Solution - JugSummerCa...
 
Nantes Jug - Java 7
Nantes Jug - Java 7Nantes Jug - Java 7
Nantes Jug - Java 7
 

[Breizhcamp 2015] Refactoring avec 1,22% de code couvert par les tests ... Golden Master testing à la rescousse !