End-to-end testing: from rookie to pro
Submitted by Domenico Gemoli (@aberonni) on Saturday, 21 July 2018
You can gain a lot from a stable suite of end-to-end tests, but not a lot of developers know how easy it is to setup these tests. Dive into this crash course on end-to-end testing, you’ll first learn the basics and then some advanced techniques that will have you testing like a pro in no time.
The talk is a walkthrough guide on how to get up and running with end-to-end tests, using WebdriverIO as an example framework for demonstration purposes. Once I’ve gone through the basic setup and some simple examples, I’ll show some advanced techniques for testing some of the trickier aspects of a website.
What is end-to-end testing?
- Basic explanation
- Why it is useful
- Comparison with other types of testing
- Comparison of libraries (Why WebdriverIO? Instead of nightwatch, casperjs, cypress.io etc…)
Setup a test suite with WebdriverIO
- Quick configuration and first test with WebdriverIO CLI
- Examples of what you can achieve out of the box
Integrating webdriverio with other tools
- Visual regression with screenshot comparisons
- Mobile testing with Appium
- Integration with Zalenium
- Integration with Browserstack and Saucelabs
- Testing a11y
- Testing console errors
- Testing video
- Testing sound
Domenico is a Frontend developer at booking.com, currently working on their testing infrastructure.
He has been working with web technologies since 2010, when he joined unit9 as an Interactive developer, builiding stunning interactive storytelling experiences in Flash. In 2015 he moved on to work for the YOOX Net-a-Porter group, building luxury fashion e-commerce websites. This is where he met end-to-end testing, and it was love at first sight.
Since then, Domenico has been actively looking for opportunities to work on end-to-end tests and he is currently helping booking.com achieve deployment stability through a sophisticated end-to-end testing infrastucture.