In this workshop, we'll take your intermediate Selenium knowledge to ninja levels with help from Santiago Suarez Ordoñez, Sauce's System Engineer and Selenium Specialist, Dave Hunt, Selenium Committer and QA Engineer at Mozilla, and Stephen Donner, Mozilla's Web QA Manager.
By the end, you'll be able to write a parallelization-friendly, maintainable and mature cross browser testing codebase. You'll understand the advantages of using a cloud service like Sauce Labs for executing the tests and will be able to switch back and forth whenever it makes sense.
Pre-reqs are a working knowledge of Selenium, and experience writing and maintaining test suites. If you have never used Selenium before, stay tuned for info about our Selenium Beginner Workshop series coming soon!
Some of what you'll learn about:
- Page objects for better test ROI
- Some Page Object architectures
- Spin asserts and getting rid of static pauses
- Reasonable timeouts
- Faster and more robust tests:
- Writing atomic tests
- Focusing on the essential
- Generating app state
- Using guinea pigs
- Removing third party
- Different ways to parallelize
- Ensuring data independence
- Avoiding DDOS'ing your own QA server
- Cross browser testing. Same test, multiple browsers.
- Final improvements to build speed
- Generating links to jobs and embedding Sauce assets in CI results for accelerating debugging
- Job assets (what Sauce collects, how we do it, for how long, how do users access it)
- Job configurations (brief overview of job customizations, like disabling video, sending a pre-run executable for OS customizations or reporting pass-fail status)
- Breakpoints: interactive debugging on cloud resources