Reliable and Maintainable Webdriver Tests by Benji Weber

318 views · Published 10 November 2017 · 42:22 · Indexed 24 October 2026

Channel: Devoxx · 2017 · Science & Technology

Watch on YouTube

End to end tests written with webdriver have a reputation for being slow, unreliable (failing for spurious reasons), and brittle (breaking with any change). So much so that some recommend not using them, but they can be invaluable for catching problems before end users are affected.

I'll share some of the top pitfalls and most useful techniques for reliability and speed from experience building and maintaining suites of hundreds of tests that need to run reliably in less than 10 minutes for continuous deployment.

We'll look at how to deal with asynchronicity using implicit waits, avoiding point-in-time assertions, stubbing infrastructure dependencies, and how to get meaningful diagnostics for tests that only fail once in a thousand runs.

I'll also explain how the page object and screenplay patterns enable tests that are easy to keep up to date as your user interface changes.

Benji Weber is a generalist software developer and VP Software Development at Unruly. He works with extreme-programming teams that are building a programmatic advertising platform using Java, JavaScript and a sprinkling of other languages.

Benji is enthusiastic about anything that helps build valuable and reliable software fast, including Domain Driven Design, Continuous Deployment, and infrastructure automation.

More from this channel