Peter Niederwieser

Principal Software Engineer at Gradleware & Creator of Spock

Peter Niederwieser is a computer language enthusiast from Austria who has been using Java since the early days. Peter's work experience ranges from small start-ups to large enterprises like Siemens. His passion for software quality and continuous delivery invariably leads him to take the build master role on new projects, pushing project automation as far as he can. It also lead him to create Spock, an innovation-packed developer testing framework that is seeing increasing adoption around the globe.

Peter is an active member of the Groovy community, and can't sleep without his daily dose of Scala. When Peter isn't coding, you can find him speaking at conferences around the world, or pondering over a chess board.

Presentations

In this talk we will cover many Gradle power features that are particularly helpful for the real heavy lifting often needed in enterprise builds.

We will start this session with the concept and advantages of autowiring the Task Dependency Graph based on the inputs and outputs. We will then talk in detail about the new dependency management features such as the new cache, customizable dynamic revision handling and customizable version conflict resolution. From there we'll explore the new extension mechanism for the Gradle DSL and introduce the Gradle daemon. We will also discuss our take on best practices for dealing with module dependencies in the enterprise and how this can be mapped with Gradle. Finally we will show how you can programatically customize the way the Gradle build model is mapped to the STS Gradle Eclipse plugin. All those features are presented in the context of our roadmap and what further improvement you can expect with future releases.

Geb is a next generation Functional Web Testing tool that removes the ceremony and tedium of traditional web testing, leaving you with a concise, pragmatic and productive environment in which to work. It combines the power of Groovy with the WebDriver/Selenium 2.0 browser automation library to provide a programmer's DSL for modeling pages (known as the PageObject Pattern) and easily automating real browsers such as Internet Explorer, FireFox and Chrome as well as the HTMLUnit library. Geb can be used standalone, or with testing frameworks such as Spock, JUnit, EasyB or Cucumber.

In this session, you will learn everything you need to know to start using Geb in your own projects. We will cover Geb's programming model, solve real-world testing challenges, and show how Geb integrates with your environment.

Haven't used Gradle in practice, but interested in learning? This workshop is the perfect hands-on introduction that equips you with a solid foundation for the rest of the conference.

This two-part hands-on Gradle workshop covers topics such as: Fundamental Groovy & Gradle concepts, getting started with Gradle, authoring build scripts, using tasks and plugins, building Java projects, automated testing, and multi-project builds. About half of the time is spent on practical exercises, so don't forget to bring your laptop! Pairing is encouraged.

This two-part workshop provides a hands-on introduction to Gradle. You will learn the fundamentals of Gradle's build language, leverage some of its built-in tasks and plugins, use Gradle's Ant integration, learn how to manage dependencies with Gradle, and top it off with a multi-project build. Please bring your laptops! Familiarity with Java is assumed; familiarity with Groovy is a plus but not required.

n the Java build space, first there was Ant, which provided a reliable way to build without an IDE. Then there was Maven, which gave us standardization in build lifecycles and dependency management. Now… Enter the Gradle and find yourself immersed in a rich build language with the flexibility of Ant, the declarativeness of Maven, and a new level of sophistication that takes your builds further than ever before.

This two-part workshop provides a hands-on introduction to Gradle. You will learn the fundamentals of Gradle's build language, leverage some of its built-in tasks and plugins, use Gradle's Ant integration, learn how to manage dependencies with Gradle, and top it off with a multi-project build. Please bring your laptops! Familiarity with Java is assumed; familiarity with Groovy is a plus but not required.

Haven't used Gradle in practice, but interested in learning? This workshop is the perfect hands-on introduction that equips you with a solid foundation for the rest of the conference.

This hands-on Gradle workshop covers topics such as: Fundamental Groovy & Gradle concepts, getting started with Gradle, authoring build scripts, using tasks and plugins, building Java projects, automated testing, and multi-project builds. About half of the time is spent on practical exercises, so don't forget to bring your laptop! Pairing is encouraged.

Spock is a developer testing framework for Java and Groovy applications. Even though it is fully JUnit-compatible on the outside, Spock isn't just another JUnit clone - its goal is to take developer testing to the next level! With its Groovy-powered and highly expressive testing language, Spock boosts productivity and brings back the fun to testing.

In the first part of this session, Spock's approach to state-based, data-driven, and behavior-based testing will be demonstrated. Next, we will explore some of Spock's extensions, in particular the Grails plugin and the Spring TestContext Framework integration. Finally, we will look under the covers of Spock and write our own extension. Along the way, expect to see lots of code and live demos.