Julien Biezemans

Julien Biezemans

Julien is a fervent BDDer who loves writing code, building well-crafted conducive software as well as sharing knowledge and techniques with other passionate people. He's been freelancing for more than 8 years in Belgium, mostly developing web applications in Ruby, PHP, Perl and - more recently - JavaScript.

Julien is also a member of the Cucumber core team. He is the lead developer on Cucumber.js, the JavaScript implementation of the famous BDD tool.

The Behaviour-Driven Programmer

Watch the video

The first steps of a Behaviour-Driven Developer An introduction to Behaviour-Driven Development, the second-generation agile methodology that aims at delivering software that matters. Most of us know that BDD has something to do with tests and the way code is produced. But what is it exactly? How does it differ from Test-Driven Development? We'll discover the technical principles and practices lying at the heart of BDD, as experienced from a naive programmer perspective. But BDD is not only about writing better tests and code. It really holds higher purposes...

Previous talks

Cucumber.js: Cuke up your JavaScript! (2012)

Watch the video

We're now living the golden age of JavaScript. An increasingly number of people are seeing it as a complete programming language. Therefore, agile development practices are now being adapted and applied to JavaScript code production.

Behaviour-Driven Development is a second-generation agile methodology with a strong focus on communication. In BDD, specifications are expressed through examples in the form of scenarios.

Originally written in Ruby, Cucumber is popular a tool for automating and validating a system against its scenarios.

A year ago, native JavaScript BDD solutions similar to Cucumber were almost inexistant. Yet the need for it was manifest. It didn't take me long before I started hacking on a port of the virtual cucurbitaceae and joined the Cucumber core team.

Cucumber.js is a native JavaScript implementation of Cucumber. It is a strict and robust port that can run on any JavaScript environment. It runs on Node.js as well as within any browsers, making it virtually serviceable against everything producing JavaScript and HTML (Node.js, Ruby on Rails, PHP, .Net, etc.).

This is an introduction to Cucumber.js. After briefly exposing the history and goals of the project, I'll demonstrate how to write features and scenarios, step definitions, hooks, support code, how to invoke Cucumber.js from both Node.js and browser environments. And of course, you'll see how to integrate it with your Ruby and Rails projects, because - yes - it works well with them.