devoxx java script-1280-720

Post on 15-Jun-2015

2.688 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Ma présentation "Chouchoutez votre code JavaScript", réalisée le 18 avril 2012 au premier Devoxx France.

TRANSCRIPT

Ch♥uch♥utez votrecode JavaScript

Romain Linsolas

@romaintaz

1

AbstractLa recette du “JavaScript aux petits oignons” :

1.Écrire des tests pour son JavaScript

2.Analyser son code pour enlever les bugs

3.Bien couvrir

4.Laisser mijoter dans un serveur d’intégration continue

2

Romain Linsolas

•Développeur Java / Web depuis 2002

•Éleveur d'usines logicielles

•@ Société Générale

3

@romaintaz

http://linsolas.free.fr/wordpress

1. Testons !

4

Notre cobaye…

•60+ méthodes utilitaires

•Support pour la programmation fonctionnelle

5

http://documentcloud.github.com/underscore/

@DocumentCloud

Notre (1ère) librairie de tests JavaScript

•BDD (Behavior Driven Development)

•Nombreux supports : Java (Maven), .Net, Ruby, Node.js, JsTestDriver, etc.

6

http://pivotal.github.com/jasmine/

@JasmineBDD

7

2. Analysons !

8

Notre outil d'analyse du code

•Plateforme de suivi de la qualité du code

•Mesure de la dette technique

•Multi-langages : Java, C#, PHP, JS, Python, etc.

9

http://www.sonarsource.com/

@SonarSource

10

3. Couvrons !

11

js-test-driver Notre 2ème framework de test JavaScript

•Syntaxe proche de JUnit (assertXXX)

•Propose un plugin de mesure de couverture de code

12

http://code.google.com/p/js-test-driver/

Exemple de code js-test-driver

GreeterTest = TestCase("GreeterTest");

GreeterTest.prototype.testGreet = function() {

var greeter = new myapp.Greeter();

assertEquals("Hello World!", greeter.greet("World"));

};

13

14

3. Intégrons !

15

Notre serveur d’intégration continue

•Très facile d'utilisation

•Développement & communauté très actifs

•400+ plugins

16

http://jenkins-ci.org/

@JenkinsCI

17

D’autres choix…

•QUnit : http://docs.jquery.com/QUnit

•YUI Test : http://yuilibrary.com/yui/docs/test/

•Mocha : http://visionmedia.github.com/mocha/

•RhinoUnit : http://code.google.com/p/rhinounit/

• JsUnit : http://www.jsunit.net/

•TestSwarm : https://github.com/jquery/testswarm/

18

Questions…

19

top related