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
L'intégration continue de A à Z sur une applica...
Search
Marek Kalnik
November 30, 2012
Programming
750
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
L'intégration continue de A à Z sur une application PHP existante
Les slides de mon talk que j'ai donné à Nantes pour PHPTour 2012
Marek Kalnik
November 30, 2012
More Decks by Marek Kalnik
See All by Marek Kalnik
Ma liste subjective des 10 développeurs à connaitre
marekkalnik
0
96
Le management LEAN
marekkalnik
0
83
Versioning mobile apps and apis
marekkalnik
0
110
Comment Ionic vous aide
marekkalnik
0
160
Pourquoi choisir Ionic ?
marekkalnik
0
290
Cordova vs. Steroids
marekkalnik
0
160
Arrêtons de parler de code de qualité, ce qu'il faut c'est du code agile !
marekkalnik
2
680
Code Agile - comment redéfinir la qualité
marekkalnik
2
210
Behat - retour d'expérience
marekkalnik
1
470
Other Decks in Programming
See All in Programming
Swift愛好会100回記念 第1回を振り返る
jollyjoester
0
120
iOS開発×AI駆動開発 〜最近使って便利だったスキルの話〜
nogu66
0
140
go-spidermonkeyでAIエージェントのCode Modeを実装する
syumai
3
1.5k
이 함수, 실패하면 어떻게 되나요? null부터 Rich Errors까지, Kotlin 에러 처리 15년
haeti2
0
140
『寄り添うラジオ』をAIで作る 体験価値から逆算した、会話しないUXと品質設計
theoriatec2024
3
120
GKE アップグレード前に知っておきたい Blue/Green と PDB の関係
stkk
0
150
AIと壁打ちしながら進めるコスト管理
fufuhu
2
1.9k
Foundry Localでエージェント開発
seosoft
0
140
XHTMLが残したもの
yosuke_furukawa
PRO
1
410
書籍「プロフェッショナルAI駆動開発」紹介スライド
juntaromatsumoto
0
990
AIに既存システムを理解させる技術 ~レガシーを見捨てないハーネスエンジニアリング入門~
ochtum
0
210
Go 1.27からのGODEBUG / Go 1.27 リリースパーティ #go127party
mazrean
0
320
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.6k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
600
Thoughts on Productivity
jonyablonski
76
5.4k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
320
Designing for Performance
lara
611
70k
Test your architecture with Archunit
thirion
2
2.4k
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
67
58k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
3k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.5k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.5k
Transcript
PHPTour Nantes 2012 www.afup.org L'intégration continue de A à Z
sur une application PHP existante
Technical Team Manager Theodo Evolution Developer RogerCmsBundle Maintainer Formateur en
Bonnes Pratiques @marekkalnik Marek Kalnik http://tumblr.com/marekkalnik BLOG
Un projet legacy...
...des développeurs, des project managers...
...et la peur de bugs et deadlines.
Pour mieux dormir la nuit...
...faisons appel à l'intégration continue !
Intégration continue Automatisation Tests Documentation Intégration Votre porte-boNheur
Intégration Branche d'intégration Commits de développeurs
Tests TESTS DE DÉVELOPPEMENT TESTS UNITAIRES TESTS D'INTEGRATION TESTS APRÈS-BUGS
D'ACCEPTANCE TESTS TESTS DE DÉVELOPPEUR
Automatisation Push Build Tests DeploiemeNt Photo : stadtstreicher79@flickr
Documentation Qualité du code Installation Déploiement Développement Photo : ZeroOne
/ Foter
Intégration du legacy
Factoriser pour faire les tests ? Brett L. Schuchert Toughworks
Risque d'introduction d'un bug en modifiant une seule ligne du code legacy
LXC Jailer Les micro-frameworks Serveur BDD Les services web Slim
Photo : Darwin Bell / Foter Réplication d’environnement Pentaho Kettle Silex
Les tests non-intrusifs Linkchecker Mink + ZombieJS Mink + Selenium
Smoke testing Dev testing Build testing On peut commencer la factorisation et les tests unitaires Photo : katerha / Foter
Build Configuration Jenkins Déploiement Automatisation Jenkins-PHP Ant Fabric Jenkins-CLI Photo
: GogDog / Foter
Documentation Build Tests Déploiement HTMLPublisherPlugin + PlotPlugin RegistrationFormHandler [x] Does
not bind on get [x] Saves and sends mail on request [x] Binds facebook data UserFormHandler [x] No bind on get [x] Returns false on invalid data [x] Get user and bind on valid data
Frontend Andrew Morrell Photography / Foter
JS Test Driver JSTD
Linters JS Hint CSS Lint
Installation Jenkins 1 journée Réplication de l'environnement < 1 mois
Création de tests quelques mois Amélioration continue et projet plus stable pour la vie Estimation ?
@marekkalnik Marek Kalnik http://tumblr.com/marekkalnik BLOG L'intégration continue de A à
Z sur une application PHP existante Questions ? http://joind.in/7259 Joind.in