Automating Selenium tests and integrating code coverage reports

Speaker - David Green (co-founder London Software Craftsmanship Community)

Session description (eg. a brief paragraph)

For web applications being able to easily create automated UI tests has been one of the biggest advances in software quality in recent years. But to really get value from your UI/acceptance tests you need to be running them all the time: as part of your main build, on every check in.

However once you're writing decent UI tests, unless you're duplicating your testing effort, you'll find there are code paths that only your UI test exercises. This means your unit test code coverage report doesn't really tell you the whole story. Ideally you want your UI tests to be included so you get a single, representative code coverage report - that way you can identify areas with poor test coverage, no matter how things are tested.
 
In this hands-on session we'll walk through setting up an example project using JUnit for unit tests, Emma for code coverage, Selenium (WebDriver) for integration tests all built with Maven. By the end of the session we'll have built a simple application with unit & integration tests and be able to get a combined code coverage report - all of which can be run directly within Eclipse, from the command line or on your CI server.

What topic are you covering

Integrating Emma, Selenium, JUnit in a Maven build.

Who should attend your session - any previous experience required?

Anyone interested in setting up an awesome build; no prior experience of Emma, Selenium or Maven required.

What will attendees learn by attending your session

Practical demonstration of how to apply this to your own projects.

What problem space / challenges are you attempting attempting to solve

Automating integration tests and getting unified code coverage reports

Type of session:

Hands on (I'll start from scratch and code everything live).