100% found this document useful (2 votes)
14 views

Learning Behavior driven Development with JavaScript Create powerful yet simple to code BDD test suites in JavaScript using the most popular tools in the community 1st Edition Enrique Amodeo all chapter instant download

The document promotes various eBooks available for download on ebookmeta.com, focusing on topics such as Behavior Driven Development (BDD) with JavaScript, data structures, and machine learning. It features a specific book titled 'Learning Behavior Driven Development with JavaScript' by Enrique Amodeo, which aims to help readers create effective BDD test suites. Additionally, it includes links to other recommended digital products and provides information about the authors and reviewers of the featured books.

Uploaded by

hykesbelay2o
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (2 votes)
14 views

Learning Behavior driven Development with JavaScript Create powerful yet simple to code BDD test suites in JavaScript using the most popular tools in the community 1st Edition Enrique Amodeo all chapter instant download

The document promotes various eBooks available for download on ebookmeta.com, focusing on topics such as Behavior Driven Development (BDD) with JavaScript, data structures, and machine learning. It features a specific book titled 'Learning Behavior Driven Development with JavaScript' by Enrique Amodeo, which aims to help readers create effective BDD test suites. Additionally, it includes links to other recommended digital products and provides information about the authors and reviewers of the featured books.

Uploaded by

hykesbelay2o
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 40

Get the full ebook with Bonus Features for a Better Reading Experience on ebookmeta.

com

Learning Behavior driven Development with


JavaScript Create powerful yet simple to code BDD
test suites in JavaScript using the most popular
tools in the community 1st Edition Enrique Amodeo
https://ebookmeta.com/product/learning-behavior-driven-
development-with-javascript-create-powerful-yet-simple-to-
code-bdd-test-suites-in-javascript-using-the-most-popular-
tools-in-the-community-1st-edition-enrique-amodeo/

OR CLICK HERE

DOWLOAD NOW

Download more ebook instantly today at https://ebookmeta.com


Recommended digital products (PDF, EPUB, MOBI) that
you can download immediately if you are interested.

Learning JavaScript Data Structures and Algorithms Write


complex and powerful JavaScript code using the latest
ECMAScript 3rd Edition Loiane Groner
https://ebookmeta.com/product/learning-javascript-data-structures-and-
algorithms-write-complex-and-powerful-javascript-code-using-the-
latest-ecmascript-3rd-edition-loiane-groner/
ebookmeta.com

Learning TensorFlow.js: Powerful Machine Learning in


JavaScript 1st Edition Gant Laborde

https://ebookmeta.com/product/learning-tensorflow-js-powerful-machine-
learning-in-javascript-1st-edition-gant-laborde/

ebookmeta.com

Learning TensorFlow js Powerful Machine Learning in


JavaScript 1st Edition Gant Laborde

https://ebookmeta.com/product/learning-tensorflow-js-powerful-machine-
learning-in-javascript-1st-edition-gant-laborde-2/

ebookmeta.com

Worship Taboo Mommy Domme Nina Sestina

https://ebookmeta.com/product/worship-taboo-mommy-domme-nina-sestina/

ebookmeta.com
Copyright And Fundamental Rights In The Digital Age: A
Comparative Analysis In Search Of A Common Constitutional
Ground 1st Edition Oreste Pollicino
https://ebookmeta.com/product/copyright-and-fundamental-rights-in-the-
digital-age-a-comparative-analysis-in-search-of-a-common-
constitutional-ground-1st-edition-oreste-pollicino/
ebookmeta.com

A Companion to Latin American Literature and Culture,


Second Edition Sara Castro-Klaren

https://ebookmeta.com/product/a-companion-to-latin-american-
literature-and-culture-second-edition-sara-castro-klaren/

ebookmeta.com

The History of U S Immigration Data Cathy D'Alessandro

https://ebookmeta.com/product/the-history-of-u-s-immigration-data-
cathy-dalessandro/

ebookmeta.com

Alzheimer Disease Sourcebook (Health Reference) 7th


Edition Angela Williams

https://ebookmeta.com/product/alzheimer-disease-sourcebook-health-
reference-7th-edition-angela-williams/

ebookmeta.com

IoT, AI, and ICT for Educational Applications:


Technologies to Enable Education for All 1st Edition
Stamatios Papadakis
https://ebookmeta.com/product/iot-ai-and-ict-for-educational-
applications-technologies-to-enable-education-for-all-1st-edition-
stamatios-papadakis/
ebookmeta.com
Enjoyment of Music Essential Listening Fourth Edition
Forney

https://ebookmeta.com/product/enjoyment-of-music-essential-listening-
fourth-edition-forney/

ebookmeta.com
www.it-ebooks.info
Learning Behavior-driven
Development with JavaScript

Create powerful yet simple-to-code BDD test


suites in JavaScript using the most popular tools
in the community

Enrique Amodeo

BIRMINGHAM - MUMBAI

www.it-ebooks.info
Learning Behavior-driven Development with JavaScript

Copyright © 2015 Packt Publishing

All rights reserved. No part of this book may be reproduced, stored in a retrieval
system, or transmitted in any form or by any means, without the prior written
permission of the publisher, except in the case of brief quotations embedded in
critical articles or reviews.

Every effort has been made in the preparation of this book to ensure the accuracy
of the information presented. However, the information contained in this book is
sold without warranty, either express or implied. Neither the author, nor Packt
Publishing, and its dealers and distributors will be held liable for any damages
caused or alleged to be caused directly or indirectly by this book.

Packt Publishing has endeavored to provide trademark information about all of the
companies and products mentioned in this book by the appropriate use of capitals.
However, Packt Publishing cannot guarantee the accuracy of this information.

First published: February 2015

Production reference: 1130215

Published by Packt Publishing Ltd.


Livery Place
35 Livery Street
Birmingham B3 2PB, UK.

ISBN 978-1-78439-264-2

www.packtpub.com

www.it-ebooks.info
Credits

Author Project Coordinator


Enrique Amodeo Judie Jose

Reviewers Proofreaders
Domenico Luciani Stephen Copestake
Mihir Mone Maria Gould
Takeharu Oshida Paul Hindle
Juri Strumpflohner
Indexer
Commissioning Editor Priya Sane
Pramila Balan
Graphics
Acquisition Editor Sheetal Aute
Richard Brookes-Bland
Production Coordinator
Content Development Editors Nitesh Thakur
Sriram Neelakantan
Sharvari Tawde Cover Work
Nitesh Thakur

Technical Editor
Indrajit A. Das

Copy Editors
Karuna Narayanan
Laxmi Subramanian

www.it-ebooks.info
About the Author

Enrique Amodeo is an experienced software engineer currently working and


living in Berlin. He is a very eclectic professional with very different interests and
more than 15 years of experience. Some of his areas of expertise are JS, BDD/TDD,
REST, NoSQL, object-oriented programming, and functional programming.

As an agile practitioner, he uses BDD and emergent design in his everyday work
and tries to travel light. Experienced in both frontend and server-side development,
he has worked with several technical stacks, including Java/JEE, but since 2005, he
prefers to focus on JS and HTML5. He is now very happy to be able to apply his JS
knowledge to the server-side development, thanks to projects such as Node.js.

He also has written a book in Spanish on designing web APIs, following the REST
and hypermedia approach (https://leanpub.com/introduccion_apis_rest).

I would like to thank my wife for making this book possible.


She is the one who supported me and reminded me to "continue
writing that difficult chapter" whenever I started thinking of
doing something else. Without her, I would probably have
never completed this book!

www.it-ebooks.info
About the Reviewers

Domenico Luciani is a software and web developer and compulsive coder.


He is curious and is addicted to coffee. He is a computer science student and a
passionate pentester and computer-vision fanatic.

Having fallen in love with his job, he lives in Italy; currently, he is working for
many companies in his country as a software/web developer. You can find more
information on him at http://dlion.it/.

Mihir Mone is a postgraduate from Monash University, Australia. Although


he did his post graduation in network computing, these days, he mainly does
web and mobile development.

After spending some time fiddling around with routers and switches, he
quickly decided to build upon his passion for web development—not design,
but development. Building web systems and applications rather than websites
with all their fancy Flash animations was something that was very interesting
and alluring to him. He even returned to his alma mater to teach web development
in order to give back what he had learned.

These days, he works for a small software/engineering house in Melbourne,


doing web development and prototyping exciting, new ideas in the data
visualization and UX domains.

He is also a big JavaScript fan and has previously reviewed a few books on jQuery
and JavaScript. He is a Linux enthusiast and a big proponent of the OSS movement.
He believes that software should always be free to actualize its true potential.
A true geek at heart, he spends some of his leisure time writing code in the hope
that it may be helpful to the masses. You can find more information on him at
http://mihirmone.apphb.com.

He is also a motorsport junkie, so you may find him loitering around the race tracks
from time to time (especially if Formula 1 is involved).

www.it-ebooks.info
Takeharu Oshida works at a small start-up, Mobilus (http://mobilus.co.jp/).
Mobilus provides a real-time communication platform and SDK called Konnect.

As a JavaScript engineer, he designs APIs, writes code and tests, activates EC2
instances, and deploys code. In other words, he is involved in everything, from
frontend to backend.

He is also a member of the Xitrum web framework project (http://xitrum-


framework.github.io/). In this project, he is learning the functional programming
style of Scala by creating sample applications or translating documents.

I want to thank to my colleague, Ngoc Dao, who introduced this


book to me.

Juri Strumpflohner is a passionate developer who loves to code, follow the


latest trends on web development, and share his findings with others. He has been
working as a coding architect for an e-government company, where he is responsible
for coaching developers, innovating, and making sure that the software meets the
desired quality.

Juri strongly believes in the fact that automated testing approaches have a positive
impact on software quality and, ultimately, also contribute to the developer's own
productivity.

When not coding, Juri is either training or teaching Yoseikan Budo, a martial art form
in which he currently owns a 2nd Dan black belt. You can follow him on Twitter at
@juristr or visit his blog at http://juristr.com to catch up with him.

www.it-ebooks.info
www.PacktPub.com

Support files, eBooks, discount offers, and more


For support files and downloads related to your book, please visit
www.PacktPub.com.

Did you know that Packt offers eBook versions of every book published, with PDF
and ePub files available? You can upgrade to the eBook version at www.PacktPub.
com and, as a print book customer, you are entitled to a discount on the eBook copy.
Get in touch with us at [email protected] for more details.

At www.PacktPub.com, you can also read a collection of free technical articles, sign
up for a range of free newsletters and receive exclusive discounts and offers on Packt
books and eBooks.
TM

https://www2.packtpub.com/books/subscription/packtlib

Do you need instant solutions to your IT questions? PacktLib is Packt's online digital
book library. Here, you can search, access, and read Packt's entire library of books.

Why subscribe?
• Fully searchable across every book published by Packt
• Copy-and-paste, print, and bookmark content
• On-demand and accessible via a web browser

Free access for Packt account holders


If you have an account with Packt at www.PacktPub.com, you can use this to access
PacktLib today and view 9 entirely free books. Simply use your login credentials for
immediate access.

www.it-ebooks.info
www.it-ebooks.info
Table of Contents
Preface 1
Chapter 1: Welcome to BDD 7
The test-first approach 7
The test-first cycle 9
Write a failing test 10
Make the test pass 10
Clean the code 11
Repeat! 12
Consequences of the test-first cycle 13
BDD versus TDD 14
Exploring unit testing 16
The structure of a test 21
Test doubles 22
What is a good test? 23
Summary 24
Chapter 2: Automating Tests with Mocha, Chai, and Sinon 27
Node and NPM as development platforms 27
Installing Node and NPM 28
Configuring your project with NPM 29
Introducing Mocha 32
Useful options in Mocha 35
Our first test-first cycle 37
More expressive assertions with Chai 41
Working with the "should" interface 45
Red/Green/Refactor 47
Parameterized tests 56
Organizing your setup 58
Defining test scenarios 63

www.it-ebooks.info
Table of Contents

Test doubles with Sinon 65


Is it traditional TDD or BDD? 70
Welcome Sinon! 71
Integrating Sinon and Chai 73
Summary 76
Chapter 3: Writing BDD Features 77
Introducing myCafé 77
Writing features 78
Displaying a customer's order 79
Tips for writing features 84
Starting to code the scenarios 86
Testing asynchronous features 89
Testing a callback-based API 89
Testing a promise-based API 91
Interlude – promises 101 92
Mocha and promises 95
Organizing our test code 101
The storage object pattern 104
The example factory pattern 108
Finishing the scenario 112
Parameterized scenarios 117
Finishing our feature 120
Summary 127
Chapter 4: Cucumber.js and Gherkin 129
Getting started with Gherkin and Cucumber.js 130
Preparing your project 130
Writing your first scenario in Gherkin 132
Executing Gherkin 134
The World object pattern 138
Better step handlers 143
Better reporting 145
Writing advanced scenarios 147
Gherkin example tables 147
Consolidating steps 153
Advanced setup 156
Gherkin-driven example factory 159
Implicit versus explicit setup 161
The Background section 164
Parameterized scenarios 165
Finishing the feature 170

[ ii ]

www.it-ebooks.info
Table of Contents

Useful Cucumber.js features 172


Tagging features and scenarios 172
Hooks 174
The before hook 174
The after hook 175
The around hook 175
Non-English Gherkin 176
Cucumber.js or Mocha? 176
Summary 177
Chapter 5: Testing a REST Web API 179
The approach 179
A strategy to test web APIs 180
Mocha or Cucumber.js? 182
The plan 182
Testing the GET order feature 183
Exploring our feature a bit 184
Starting, stopping, and setting up our server 186
Testing whether the API responds with 200 Ok 189
Should we use a realistic order object? 190
Implementing the test 191
Testing our HAL resource for orders 193
The contract with the business layer 195
Finishing the scenario 198
Testing slave resources 202
The order actions 202
Testing embedded resources 210
Extracting cross-cutting scenarios 216
Homework! 219
Summary 221
Chapter 6: Testing a UI Using WebDriverJS 223
Our strategy for UI testing 223
Choosing the right tests for the UI 225
The testing architecture 226
WebDriverJS 229
Finding and interacting with elements 231
Complex UI interaction 235
Injecting scripts 236
Command control flows 238
Taking screenshots 240
Working with several tabs and frames 240

[ iii ]

www.it-ebooks.info
Table of Contents

Testing a rich Internet application 241


The setup 242
The test HTML page 242
Serving the HTML page and scripts 244
Using browserify to pack our code 245
Creating a WebDriver session 249
Testing whether our view updates the HTML 249
Testing whether our view reacts with the user 260
What about our UI control logic? 267
Summary 270
Chapter 7: The Page Object Pattern 273
Introducing the Page Object pattern 273
Best practices for page objects 274
A page object for a rich UI 277
Building a page object that reads the DOM 279
Building a page object that interacts with the DOM 284
Testing the navigation 294
Summary 300
Chapter 8: Testing in Several Browsers with Protractor
and WebDriver 303
Testing in several browsers with WebDriver 303
Testing with PhantomJS 304
Running in several browsers 307
The Selenium Server 309
Welcome Protractor! 312
Running the tests in parallel 319
Other useful configuration options 320
Using the Protractor API 322
Summary 330
Chapter 9: Testing Against External Systems 333
Writing good test doubles 334
Testing against external systems 336
Testing against a database 337
Accessing the DB directly 337
Treating the DAO as a collection 344
Testing against a third-party system 350
The record-and-replay testing pattern 351
Summary 356

[ iv ]

www.it-ebooks.info
Table of Contents

Chapter 10: Final Thoughts 357


TDD versus BDD 357
A roadmap to BDD 360
BDD versus integration testing 360
BDD is for testing problem domains 361
Concluding the book 364
Next steps 366
Summary 366
Index 367

[v]

www.it-ebooks.info
www.it-ebooks.info
Other documents randomly have
different content
Une maison quelconque en un quartier perdu...
Le long couloir muet... L’escalier vermoulu,
Puis un palier, un rais de lumière, une porte...
Une servante avec un visage de morte
Me conduit. Des tapis où des êtres humains
Sont couchés au milieu de l’ombre et des coussins.
Les visages épais ont des regards sans flamme.
On distingue des seins et des bustes de femme
Et la fumée est lourde et je demeure là
Sous le miroir sans fin qui reflète un Bouddha
Et les peines du soir à mes côtés s’endorment.
Alors, un long visage clair, parmi les formes
Apparaît, il sourit, il se penche sur moi,
Sur ses lèvres se pose un minuscule doigt,
Qui fait chut! j’entends mal des choses à voix basse,
Je sens qu’un beau secret dans l’atmosphère passe...
Mais soudain un peignoir fait en se déplaçant
Un grand cercle couleur d’émeraude et de sang,
Comme un jet de cristal en flamme un rire fuse,
Les contours sont moins nets, les formes plus confuses
Et le visage au clair ovale disparaît...
Jamais je ne saurai quel était le secret.
LES DIEUX SUR LES QUAIS

Le jeune Grec sauta de la barque, léger.


Le vent du port souffla dans sa tunique orange,
Ses cheveux blonds étaient sur le front partagés,
Il avait des yeux verts d’une lumière étrange.

La jeune fille au corps couleur de bronze éteint


Le suivit et durant qu’il attachait l’amarre,
Sur son cou long et pur et dans ses cheveux fins
Elle ajusta ses bijoux bleus et sa tiare.

Les bouges clignotaient le long des quais déserts.


La lune sur le golfe endormait la nuit rose.
Ils dégageaient l’odeur des fleurs et de la mer.
Lui portait un miroir d’argent, elle une rose.

Quand sur le seuil fumeux ils se tinrent debout,


On cessa de cogner les tables et les verres.
Il fit de la beauté d’un mouvement de cou,
Elle versa l’amour en baissant les paupières.

«Qui donc es-tu, forme d’Éros au buste étroit?


Dans quel temple es-tu née, Aphrodite d’Asie?
Nul n’avait jamais vu tes seins sombres et droits...
Et l’âme devant toi, jeune homme, s’extasie...

«Jusqu’ici les vaisseaux venus de l’Orient


Ne rapportaient ici que des Arabes hâves,
Des juives en haillons avec des yeux brillants,
Les rebuts des harems et des marchés d’esclaves...

«Quels sont ces talismans autour de vos poignets,


Ces étranges bijoux et ces pierres coniques?
Pourquoi ces ongles peints et ces longs doigts soignés?
De quel tissu tressé sont faites vos tuniques?»
Un marin attirait la jeune fille à lui
Et ses doigts noirs de vin lui maculaient l’épaule.
Vers la bouche du Grec ainsi que vers un fruit
Se penchaient goulûment Carmen et la Créole.

L’accordéon boiteux se remit à bercer


Le rougeâtre minuit de sa musique fausse,
Les ivrognes recommencèrent à crier
Et l’alcool ralluma le bleu des yeux féroces.

Un obscène danseur au visage épilé


Qui pour rire agitait une grande mâchoire
Et qui tournait parmi les buveurs attablés
Saisit d’un bras velu le jeune homme d’ivoire.

La femme aux seins géants, jalouse, se dressa


Et la maigre en hurlant lui lança la bouteille,
Un couteau luit. Un air de bagarre passa
Sur les cols bleus et blancs et les trognes vermeilles.

Le Grec dans une odeur de rut et de sueur


Se sentit pris par sa chevelure frisée.
Et les hommes changés en bêtes en fureur,
Par terre écartelaient la vierge à peau bronzée.

On se les partagea comme un butin charnel,


Comme un trésor qu’on pille après une bataille.
Le bouge où se mêlaient marins et criminels
Vit une sexuelle et splendide ripaille.

Puis, comme la laideur et le mal sont puissants,


Les deux êtres parfaits sourirent dans l’orgie,
Le plaisir et le vin remuèrent leurs sens,
De la nuit animale ils surent la magie.

Lui rendait à présent l’étreinte et le baiser.


Elle s’offrait pâmée, impudique aux lumières...
Ils tendaient le désir de leurs bras épuisés.
Leur visage bouffit leurs traits se déformèrent
Leur visage bouffit, leurs traits se déformèrent.

Quand l’aurore parut sur les pavés glissants


Vidant dans un hoquet le port et sa racaille.
L’Aphrodite à peau mate et l’Éros vomissant
Titubaient dans la boue et cognaient les murailles.

C’est depuis lors qu’on voit dans la tourbe des quais


Au milieu des calfats et des marchands d’oranges
Errer à demi nus, provocants, efflanqués,
Exsangues et lascifs les voyageurs étranges.

Ils rient stupidement, mais parfois le soleil


Dans le miroir cassé qu’ils regardent encore
Dessine indulgemment un beau pays vermeil
Et le fantôme d’or d’un temple callichore.
LA TREIZIÈME ANNÉE

Un soir, j’ai rencontré la treizième année


Avec ses yeux trop peints de fillette damnée
Et sa robe trop courte et ses bas bien tendus...
L’ange bas et flétri des plaisirs défendus
Aguichait à présent les passants sur la place
Où jadis, dans le temps de sa précoce grâce,
Elle essayait sur moi ses lèvres et ses mains,
Le long du mur, au pied du bec de gaz éteint.
—Viens-tu? dit-elle en se cambrant et sur son torse
De fausse enfant tombaient ses seins lourds dans leur force.
—Nous avons trop vieilli. Tes mains ont des bijoux
Et mes cheveux sont gris...—Tu me plais malgré tout.
—La police pourrait passer. Petite fille
De quarante ans, je vois quelqu’un à cette grille
Qui regarde.—Il s’éloigne et l’endroit est désert.
—Je ne reconnais plus le mur. Il fait trop clair.
C’est l’ombre qui jadis te faisait jeune et belle...
—Le vent souffla le bec de gaz...—Tu vois, dit-elle...
LA COMPLAINTE DE L’HOPITAL

Le vieil hôpital est en briques rouges,


Palais de la mort avec quatre tours
Il a sur la porte un fanal qui bouge,
Le fleuve le baigne et serpente autour.
Auprès sont les bas quartiers et les bouges.
Le peuple, le soir, cherche ses amours
Près de l’hôpital fait de briques rouges.

Le vieil hôpital est rempli d’humains


Marqués par le mal et par la misère.
Dans les lits étroits ils tordent leurs reins.
Là sont les perdus et les solitaires,
L’homme sans amis et l’homme sans mère.
Grimaçants, gelés et levant les mains,
Le vieil hôpital est rempli d’humains.

On entend le vent à travers les salles,


Il fait des récits dans les corridors
Et chaque visage est un peu plus pâle,
Quand il dit par où, pieds devant, l’on sort,
Qu’avec sa bougie et son linceul sale,
La petite chambre où l’on met le mort
Est à droite, au fond, dans le corridor.

Que les yeux sont grands dans les faces blêmes!


Dans les maigres corps que de cœurs fervents!
Combien ont offert aux êtres qu’ils aiment
L’élan éperdu de moignons en sang!
Que de cris d’appel vers des Christ absents!
Quelle écume d’âme et que de blasphèmes!
Que les yeux sont beaux dans les faces blêmes!

O vieil hôpital dont les murs encerclent


Le mélancolique et l’affreux troupeau,
Marmite enfermant avec ton couvercle
Marmite enfermant avec ton couvercle
Les membres, les os, les nerfs et les peaux,
Gîte de douleur, enfer aux cent cercles
Dont les torturés n’ont pas de repos,
O vieil hôpital, voici le troupeau,
Voici l’éclopé qui penche et se traîne,
Voici le manchot, voici le boiteux,
Ceux qui n’auront plus jamais avec eux
Le bonheur d’avoir une forme humaine,
L’homme sans mâchoire et l’homme sans yeux,
La jambe fendue et le cœur boiteux,
Corps mangé de plaie et pauvre âme en peine...

Fais-leur bon accueil, ô vieil hôpital!


Incline tes tours, ouvre-leur ton porche!
Pour leur tenir chaud, éclairer leur mal,
Allume ta brique ainsi qu’une torche!
Ouvre comme un ciel ton dôme ogival!
Pour ceux qu’on déchire et ceux qu’on écorche,
Un peu de pitié, ô vieil hôpital!
LE VOILE FROISSÉ

Voilà ce que je vis au fond du quartier vieux...


La jeune fille en deuil s’avançait au milieu
Des sordides bazars et des marchands d’oranges.
Le soir resplendissait dans les loques étranges,
Les haillons bigarrés aux fenêtres pendus.
Sa robe frémissait comme un songe perdu
Parmi le peuple affreux grouillant dans la ruelle.
Elle m’apparaissait tendre, rêveuse et frêle
Et je souffrais sentant combien les bruits, l’odeur,
Les visages devaient déchirer sa pudeur.
Je vis un torse épais, une chemise rouge...
Des voix d’homme sortaient du demi-jour d’un bouge
Et deux yeux d’assassin guettaient dans un couloir...
Et là, vint s’engouffrer soudain le voile noir
Le visage pudique et pur sous la voilette.
La nuit appesantit ses ombres violettes
Sur les fruits, les ruisseaux, les bars du quartier vieux.
Je voyais une lampe à des volets lépreux...
Plus tard on l’éteignit... Un pas léger dans l’ombre...
Le sang du bec de gaz... Pâle en sa robe sombre,
Elle passe et je vois que le voile est froissé,
Je comprends que des mains dans sa jupe ont passé,
On a mordu son cou, sa bouche a des empreintes,
Je sens qu’elle a tremblé sous une forte étreinte...
Elle va, les yeux clos, pudiquement, sans voir
Et deux yeux d’assassin la suivent du couloir...
LE CAFÉ-CONCERT MAUDIT

C’est au fond du faubourg, après les cheminées...


Le chemin de charbon mène au café-concert...
Les maisons sont autour lépreuses, lézardées
Et les enfants qu’on voit sont rongés d’un mal vert.

Et là, pour le plaisir de l’alcool et des femmes


Viennent les matelots halés par les saisons,
Les chauffeurs qui se sont roussis auprès des flammes
Dans les soutes, les déchargeurs de cargaisons.

Et là, viennent les trafiquants de chair humaine,


Le troupeau paria des quais et des chalands,
L’arabe d’un gris sale et le nègre d’ébène,
Déchets d’orientaux pourris par l’occident.

Sur la porte flamboie une lanterne rouge.


Le ruisseau semble autour charrier des typhus.
C’est un bouge d’enfer maudit entre les bouges,
C’est le café-concert dont on ne revient plus.

Car la mauresque juive a des seins magnifiques


Qui pendent pesamment sur son corps glorieux,
Et sa danse du ventre est grotesque et lubrique
Et la faim de sa chair vous coule par les yeux.

Car le clown en gants blancs, en chapeau haut de forme


Grimace en imitant le hibou et le chat,
Si drôlement qu’on est saisi d’un rire énorme
Dont on roule par terre au milieu des crachats.

Dans les verres le vin rougeoie et le punch flambe.


L’air est opaque et sent le tabac et la chair
Et les filles montrent leurs gorges et leurs jambes
Dans des tangos coupés de coups de revolver.
Et le plaisir est tel de danser, d’être ivrogne,
De toucher des corps mous en beuglant des refrains,
De sentir la sueur des torses et des trognes,
Qu’on ne ressort jamais de cet enfer divin.

Pendant l’éternité durera cette fête.


On voit, en regardant de près, sous les gants blancs
Du clown, bouger les os de sa main de squelette,
Il a l’orbite vide et le crâne branlant.

Ces accroche-cœur bruns sont collés sur des tempes


Dont la peau est séchée et tombe par endroits.
Et la juive qui danse aux clartés de la lampe
Tourne son ventre ainsi qu’un astre mort et froid.

L’opulente Carmen a des tibias maigres


Pour supporter un corps qui va se dissolvant,
Et la rouquine étreint un long spectre de nègre
Et dans leur rire on voit se déchausser leurs dents.

Le matin charbonneux sur des quais de halage


Apparaît à travers des formes de vaisseaux...
Et les hommes dans le quartier des débardages,
Avec le dos courbé cheminent en troupeau...

Le bouge au loin frémit et danse dans la pluie...


Et titubant, un matelot, sous le fanal,
Regarde au ciel passer la brume avec la suie...
—O soleils qui montaient sur l’océan austral!...
LA TRESSE COUPÉE

Sur le seuil d’or du magasin d’antiquités


L’enfant se fait coiffer par l’ancienne beauté.
La marchande aux yeux peints admire, palpe et flatte
L’éblouissante peau, les lèvres écarlates
Et la tresse qui tomberait jusqu’aux talons
Si ses doigts secs ne la tordaient sur le cou blond.
Quelquefois le miroir ornant la devanture
Lui montre son visage avec des bouffissures,
Ses lèvres retombant, son teint parcheminé...
Le parfum de la mort sort des meubles fanés.
L’enfant que le soleil de la rue illumine
Suit des oiseaux en cage aux boutiques voisines...
Mais soudain au moment de nouer les cheveux,
La femme, la poussant parmi les objets vieux
Du magasin, les oripeaux, les ors des frusques,
Tranche avec ses ciseaux la natte d’un coup brusque,
La suspend à son cou comme un souple serpent
Et danse, geai flétri, sous ces plumes de paon
Pendant que les ciseaux font un bruit métallique
Et que de tous côtés, sur le seuil des boutiques,
Des commères tapent leur ventre en s’esclaffant
De voir le beau visage abîmé de l’enfant.
LA FOIRE FOLLE

La foire flamboyait sur le boulevard ivre


Au chant criard de milliers de mirlitons.
Je m’avançais parmi les baraques, les cuivres,
Dans le rayonnement des cibles de cartons.

Et je passai près des mangeurs de sucre d’orge.


Un torrent de guimauve entre leurs bras coulait,
Les sucres colorés ruisselaient sur les gorges,
Ils étaient gras avec des yeux couleur de lait.

Ils aspiraient avec des lèvres sirupeuses


Comme avec une pompe et sans avidité.
La tristesse sans fin de l’innocence heureuse
Planait sur ces corps mous et ces cœurs hébétés.

Et je vis le jeu de massacre. Les poupées


Étaient humaines et vivaient en grimaçant
Par les balles de son elles étaient frappées,
On les voyait danser, souffrir, cracher le sang.

Et je vis les lutteurs faisant saillir leurs formes


Et qui se pavanaient sous de roses maillots
Et des femmes auprès de ces amants énormes
Se disputaient avec d’hystériques sanglots.

Une clownesse ayant trop de carmin aux joues


Tourbillonnait avec un bouquet de papier.
Et soudain imitait un paon faisant la roue
Avec sa robe d’or aux volants déployés.

Et je vis le dompteur dans la ménagerie:


Il avait délivré le tigre et le lion,
Mais tous semblaient ce soir atteints de léthargie
Et dormaient près de lui, fraternels compagnons.
Les perroquets prenaient de bizarres postures
Pour lisser leur col vert et leur corps bleuissant
Et le singe malade, avec des couvertures
Près du boa, s’emmaillotait en gémissant.

Et les chevaux de bois roulaient en cavalcades


Fantastiques au ciel du plafond plein de trous.
L’on voyait alterner comme dans les ballades
L’amazone fantôme et le cavalier fou.

Vers la belle Fatma dont la robe défaite


S’entr’ouvrait sur des seins fabuleux, accouraient
Le prince Mignapouf et le veau à trois têtes
Et pour la posséder ils s’entre-déchiraient.

Les ruelles crachaient les voleurs et les filles


Et les couples gâtés d’interlopes amants.
Et le phoque géant et la femme torpille
Se mêlaient en un monstrueux accouplement.

Et dans l’ombre tombant de l’éléphant du cirque


Comme si, là, la foire avait mis son secret,
La petite danseuse et le nain anémique
Dessinaient en dansant un fragile ballet.

Mais je fus ébloui du cerceau des gugusses


Et du vol clair des écuyers surnaturels...
Et je fus projeté par les montagnes russes
A travers le feu d’artifice jusqu’au ciel.
LES NOCTURNES

L’esprit bleu de la nuit s’élève des pavés...


Ils marchent sans savoir ce qu’ils pourront trouver
Dans les longs corridors déserts que sont les rues.
Cœurs tristes des maisons, fenêtres disparues!...
Un volet claque, un bar clignote, un fiacre meurt...
Chacun un peu plus loin veut porter sa douleur...

Ils croisent des soupeurs attardés, des ivrognes,


Des ouvriers allant vers d’obscures besognes
Et les sergents de ville avec leur capuchon.
Les gardiens de travaux lèvent leur lumignon,
La pierreuse au front bas leur parle de sa chambre
Et pour les décider leur découvre ses jambes.

Le brouillard pénétrant humecte leurs habits,


Un chaland mort repose au long du quai maudit...
De son clapotement le fleuve les appelle...
L’ombre de cette nuit leur paraît éternelle...

Rentrer chez soi tout seul! Tout vaut mieux que le mal
De l’allumette avec son éclair sépulcral
Dans l’escalier, que tous ces seuils inexorables,
Que l’appartement froid, la lampe sur la table,
Le livre ouvert, le lit, ce berceau des remords,
Et le morne sommeil, frère obscur de la mort.
VIOL DE FILLE

Après le dernier bar, au haut de la montée


S’ouvre sa chambre et de la rue on voit le lit.
C’est une fille magnifique et réputée
Qui vend à bon marché la luxure et l’oubli.

Les juifs des bas quartiers, les hommes de la troupe,


Les arabes, les assassins aux yeux bridés.
Les jeunes marsouins qui sautent des chaloupes
Sur les quais bleus, tous sont venus la posséder.

Un seul est à jamais exclu du lit célèbre,


Un marin aux yeux bleus de la race du Nord,
Qui brûle de désir jusque dans ses vertèbres
Pour la chair mate avec des reflets noir et or.

Pour lui, toutes les nuits, la misérable porte


Est fermée. Et collé sur le bois il entend
La femme qui se pâme exprès, de telle sorte
Que ses hoquets d’amour lui déchirent les sens.

Il guette la ruelle et voit ses camarades,


Assouvis, vacillant sur le seuil. Il les suit
Vers la brume du port où rêvent les escadres,
Retrouvant sur leurs pas les relents de leur nuit.

Viens ce soir, dit-elle une fois. Et des ivrognes


Le croisent. Son lit creux garde encor leur chaleur...
Ah! qu’importe! Elle rit dévêtue. Il l’empoigne,
Il tient la femme, il en respire la sueur.

Mais sans raison, elle résiste, opiniâtre.


Ils luttent. C’est pour elle un sauvage plaisir
De ne pas se donner mi-nue et de se battre.
Lui, près du beau corps brun sent monter son désir.
Ils s’acharnent parmi les bouteilles brisées
Où l’ardeur s’exaspère avec férocité.
Parfois comme une enfant elle gémit, blessée.
Elle cogne parfois sur le mâle excité.

Ils roulent dans le vin, se tordent sur les briques,


La mêlée à tous deux donne un besoin d’amour.
Elle claque des dents, rit d’un rire hystérique,
Ses jambes se serrant se refusent toujours.

Elle est lasse, étendue, et pourtant invincible.


Elle le brave encor. Le jour luit aux carreaux...
Qu’elle est belle, allongée... Il se dresse, terrible...
Dans le ventre imprenable il plante son couteau.

Un clairon matinal sonne dans les casernes.


Le sang sort du corps brun avec un bruit égal.
Ah! les pays perdus où les matins sont ternes!
Comme la mer du sud bleuit! Comme il a mal!...
LA PETITE DANSEUSE

Le géant était triste auprès du nain malade.


La grosse caisse et les cymbales expiraient
Et s’accoudant sur le carton des balustrades,
La petite danseuse au loin me regardait.

Sous la robe à paillette et le manteau de flamme


Je sentais qu’elle avait très froid au vent du soir,
Froid à sa chair d’enfant et froid peut-être à l’âme...
La foire finissait dans un grand désespoir.

Elle me regardait avec des yeux si tendres!


Une onde d’amitié vous baigne quelquefois,
On en a le cœur gros et l’on ne peut comprendre
La foule morne s’écoulait autour de moi
Alors parmi la mort de la foule muette,
Pour l’ami inconnu ainsi qu’un signe obscur,
La danseuse soudain fit quelques pirouettes
Et le geste d’offrir au ciel son corps très pur.

Mais je ne compris pas la parole subtile.


Cette mystérieuse offrande au sens profond...
L’homme ferme son âme en vivant dans les villes...
Et je partis avec les derniers lumignons...

Et c’est pourquoi, les jours de l’an, les jours de Pâques,


Depuis ce temps, je cours les foires au hasard...
Mais je n’ai jamais plus retrouvé la baraque,
La petite danseuse et son tendre regard.
LE CORBILLARD INFATIGABLE

Je vois derrière moi toujours ce corbillard...


J’ai beau fuir à travers le soir couleur de laine,
Au tournant de la rue il surgit du brouillard
Et de maigres chevaux empanachés le traînent.

Je vois les yeux brillants et les traits amaigris


Et les habits tachés des cousins et des frères,
Et je vois le drap noir sous les bouquets flétris,
Traînant sur les pavés sa loque funéraire.

Le cortège se met à courir si je cours.


Il longe l’avenue ou traverse la place.
Je le vois se hâter le long des maisons basses,
Il se tient immobile au coin des carrefours.

L’église... Elle est béante et s’ouvre comme un ventre


D’orgue et d’encens qui va manger le corbillard...
Mais non... Le prêtre, au loin, les panaches, le chantre
Parmi les becs de gaz saignant... Il se fait tard...

Un bal public perdu dans un quartier de suie...


Des danseurs fatigués que bercent des tambours...
Un quatorze juillet attardé dans la pluie
Et malade parmi l’automne des faubourgs...

Je me cache au milieu du peuple qui reflue


Mais vois toujours couler les larmes du drap noir
Et les pauvres parents cheminent tête nue
Et parfois la polka les bouscule au trottoir.

Et l’un d’eux se met à polker! Les feuilles mortes


En groupe d’or dansent autour du corbillard...
Le port s’éteint... Je me tapis contre ma porte...
Le cortège apparaît au fond du boulevard...
J’ai gravi l’escalier et j’allume la lampe.
Ils sont derrière moi, ils montent lentement,
Et j’entends le cercueil qui cogne sur la rampe...
Ils entrent solennels dans mon appartement...

Au parfum délicat des robes suspendues,


Aux tiédeurs des coussins pour l’amour préparés
La mortuaire odeur du bois se substitue
Et le fade relent des vêtements mouillés...

Ils sont tous là... La chambre est à peine assez grande.


J’ai quelques fleurs au fond des vases. Les voici!
Ils tiennent leur chapeau dans la main, ils attendent...
Et leur cercle autour du drap noir s’est rétréci...

Ah! quand repartira ce cortège d’automne?...


Quel est le cimetière où le mort dormira?...
Le prêtre s’est assis et le chantre fredonne
Et quelqu’un dans un coin esquisse une polka...
COMPLAINTEDE L’HOMME QUI S’EST PERDU

Je me suis perdu dans la ville immense.


Chaque réverbère est un peu de sang.
Chaque ruisseau luit comme une espérance
Qui vous tord le cœur en disparaissant,
En tâtant les seuils je vais, gémissant.
A des carrefours je croise des danses.
Je vois l’assassin guetter le passant
Sur un boulevard gelé de silence.
Je me suis perdu dans la ville immense.

Dois-je m’arrêter ou marcher toujours?


Je passe le pont, j’ai peur et je cours.
Le fleuve a crié; c’est mon nom qu’il crie.
Dois-je m’arrêter à l’hôtellerie
Des mauvais vivants qui sont sans amour?
Voici la maison de la rêverie,
Et voici l’église et ses quatre tours...
Les portails sont clos, les portiers sont sourds,
La ville est si vaste et l’espoir si court!...

Où sont les amis et la bonne hôtesse


Et la table mise et les grands fauteuils?
Quelle est la fenêtre et quel est le seuil
Où je puis frapper pour que je confesse
Que j’ai le corps las et le cœur en deuil?
Aux jours de ma joie et de ma jeunesse
J’avais des amis pour me faire accueil,
Pour m’offrir leur vin et leur allégresse...
Où donc les amis, où donc la jeunesse?...

J’entends des volets claquer sur les murs


Et tourner des clefs au fond des serrures...
C’est l’heure où chacun, le pur et l’impur,
Pour la solitude ou pour la luxure
Fait la porte close et la chambre obscure

You might also like