Speakers
- Venkat Subramaniam
- Matt Stine
- Brian Sletten
- Ken Sipe
- Nathaniel Schutta
- Mark Richards
- Pratik Patel
- Matthew McCullough
- Neal Ford
- Tim Berglund
- Peter Bell
- Craig Walls
- Hans Dockter
- Jeff Brown
- Oleg Zhurakousky
- Billy Williams
- Johnny Wey
- Chris Wensel
- Jim Webber
- James Ward
- Vaughn Vernon
- John Steven
- Bruce Snyder
- John Smart
- Stuart Sierra
- Roshan Sequeira
- Brian Sam-Bodden
- Terry Ryan
- Johanna Rothman
- Ian Robinson
- Paul Rayner
- Nilanjan Raychaudhuri
- Matt Raible
- Eric Pugh
- Peter Niederwieser
- Andrew Lombardi
- Howard Lewis Ship
- Tiffany Lentz
- Scott Leberknight
- Kenneth Kousen
- Kirk Knoernschild
- Dave Klein
- Paul King
- Frank Kim
- Heath Kesler
- Christopher Judd
- Jez Humble
- Daniel Hinojosa
- Erik Hatcher
- James Harmon
- Arun Gupta
- Jerry Gulla
- Jeff Genender
- Raju Gandhi
- Szczepan Faber
- Ben Ellingson
- Todd Ellermann
- Johan Edstrom
- Hamlet D`Arcy
- Esther Derby
- Jeremy Deane
- Luke Daley
- Adrian Cole
- Cliff Click
- Charles Bradley
- David Bock
- Ola Bini
- Scott Bain
- Alex Antonov
- Andres Almiray
- Dan Allen
Luke Daley
Principal Engineer @ Gradleware
Luke Daley is a member of the Gradleware engineering team. At Gradleware Luke works on Gradle (A JVM based build automation tool) and helps teams reach new levels of project automation and quality.
Luke is the lead of the Geb project (a productivity focussed Groovy browser automation/web testing tool) project which he created in 2010. You'll also find Luke contributing to other Open Source projects such as Grails (a Groovy web development framework), Spock (a next generation testing framework for the JVM) and anything else that catches his attention. With a “results over rhetoric” ethos, Luke's focus is on tools that empower software professionals to deliver and innovate, not try to save them from themselves.
Originally from Australia, Luke now resides in London where he spreads his time among work, software crafstmanship, musicianship and cursing the local weather.
Presentations
Next Level Spock
So you already know and love Spock, the Enterprise ready testing framework, but want to know how to make the most of it and take your testing to the next level? Then this talk is for you. Even if you're new to Spock, but are interested in making your testing more effective this talk is for you.
We'll start with how the combination of Spock and the Groovy language makes it easy to bring the concept of “executable specifications” to the realm of unit testing, without the ceremony but with all of the benefits, and why this is so important to the health of your system.
From there we'll discuss extending Spock through its own Extension API and support for JUnit rules, which is one way to make your tests much more expressive and maintainable.
We'll close with Spock's seamless integration with Grails 2.0, and some hidden Spock treasures that help you get even more out of your testing.
Geb - Very Groovy Browser Automation
Geb is a browser automation solution for Groovy. It brings together the power of WebDriver, the elegance of jQuery content selection, the robustness of Page Object modelling and the expressiveness of the Groovy language. Geb enables more expressive, more concise, and (very importantly) more maintainable web tests.
In this session we'll explore the foundations of Geb and illustrate how it uses the language features of Groovy to make web automation and testing productive and effective. After exploring the basics we'll explore Geb's rich Content DSL and discuss patterns for achieving maintainable tests. We'll also look at how it combines with Spock, the Enterprise ready testing framework, to enable low cost executable specifications that describe user behaviour, not browser details.
Functionally Testing Modern Web Applications with Geb
Geb is a browser automation solution for Groovy. It brings together the power of WebDriver, the elegance of jQuery content selection, the robustness of Page Object modelling and the expressiveness of the Groovy language. Geb enables more expressive, more concise, and (very importantly) more maintainable web tests.
In this session we'll go beyond an introduction and explore how to take advantage of Geb's advanced features to functionally test modern rich, dynamic, web applications. We'll also explore some common patterns and best practices for Page Object modelling that lead to robust tests with a high level of reuse. Finally we'll discuss cross browser testing strategies and explore the options for testing mobile device targeted sites. A basic understanding of Geb is required for this session.
Managing JavaScript with Gradle
JavaScript is playing an ever increasing role in modern web applications. This is having an impact on the way be automate the building of our applications as JavaScript introduces new challenges such as magnification, unification and even compilation of languages such as CoffeeScript.
In this session we'll look at how the Gradle build tool can help you test your JavaScript and transform your raw assets into optimised, deployment ready, units.
Gradle Plugin Best Practices
One of Gradle's attractive features is that plugins are extremely simple to write and can do anything. Gradle plugins can add new functionality, enhance existing functionality or even remove undesired functionality. With such an expansive scope, deciding how to implement and structure your plugin can be a challenge.
In this session we'll explore some fundamental concepts that can be used as guidelines when developing plugins and new Gradle functionality. We'll look at issues such as; how to implement flexible tasks, how to support convention over configuration while maintaining flexibility, how to structure plugin stacks, building and distributing plugins and testing and documenting your plugins.
We'll also discuss ways of customising a Gradle distribution to implicitly apply your plugins and new functionality to all builds, turning Gradle into a custom build tool for your enterprise.