Automated browser end-to-end testing is a powerful technique to ensure your web UI and backend work together nicely. In this talk, we show how we've leveraged Microsoft's Playwright library to refactor our test suite, enhance productivity and code quality.
At ownCloud, we pride ourselves in shipping well-tested code. Besides the typical unit- and integration-tests, we use automated browser/end-to-end tests for our new web frontend, which is supported both by our "ownCloud classic" backend as well as developed alongside our new generation "ownCloud Infinite Scale" backend.
Confronted with a flaky and complex continuous integration suite of end-to-end tests that was not actively maintained, hard to reason about (as well as sub-optimally documented due to the original creators leaving the project and running for, well, "longer than acceptable"), we opted to switch from Selenium/Nightwatch to Microsoft's Playwright (playwright.dev).
Tune in for this talk when we show how our test suite evolved over time, listen to our reasoning about the technological switch, and also learn from the mistakes we made and best practices we extracted into practical examples.