TestCon Vilnius 2018
Date: 16 October, 2018
Venue: Crowne Plaza Vilnius – M. K. Čiurlionio str. 84, Vilnius, Lithuania
Due to the limited availability of seats, early registration is strongly recommended to ensure your participation – we rely on a first-come, first-served basis.
Sela Group, Israel
Arnon is a Senior Consultant and Test Automation Team Lead at Sela Group. With more than 20 years of experience as a software developer, Arnon specializes in the relationships between test automation and software architecture, development practices, tools and people.
Arnon is the author of the book Complete Guide to Test Automation: Techniques, Practices, and Patterns for Building and Maintaining Effective Software Projects by Apress publishing (due late 2018); the author of the Test Automation Essentials open-source project and a contributor to the Selenium project. Arnon also blogs at https://blogs.microsoft.co.il/arnona/.
Selenium in Depth
Selenium is a very simple and straight-forward technology to use. However, if you dig deeper into it, you’ll find some hidden gems that can be very handy in making your tests more robust and maintainable. In addition, knowing Selenium more deeply will help you investigate and understand failures, and resolve many of them which you might consider as not-reproducible or unexplained. Even if you think that you know Selenium, you’d be surprised by some of the demos!
In this workshop we’ll dive deeply into Selenium and understand:
* How it works
* The different exception types that can be thrown from Selenium, and what they mean
* How to collect valuable information that will help you investigate failing tests, including the browser logs, screenshots, page source and more
* And more…
- Selenium Overview
- Introduction to Selenium
- Overview of the DOM
- Selenium Architecture: bindings and drivers
- Overview on Selenium Grid
- The basic locators
- CSS Selector
- Searching for elements within other elements
- Finding multiple elements
- Best practices for choosing locators
- Delays and waits
- Why is my browser stuck?
- Are waits always necessary?
- Understanding browser’s asynchronous operations
- The drawbacks of fixed delays
- When Implicit Wait helps and when it doesn’t?
- How FindElements behaves when ImplicitWait is used?
- Using Explicit Wait
- Writing custom wait conditions
- Understanding Selenium exceptions
- Understanding StaleElementReferenceException
- Reasons for StaleElementReferenceException
- Frames and Windows
- Frames and the DOM
- Working with multiple Frames and Windows
- Understanding SwitchTo
- Why do I get StaleElementReferenceException now?
- The TestAutomationEssentials solution
- Executing asynchronous scripts
- Investigating Failures
- Taking screenshots
- Saving the Page source
- Getting the browser’s logs
- Using EventFiringWebDriver to write log entries
- Best practices (if time allows)
- The Page Object Pattern
- Don’t catch exceptions if you don’t have to
- Fitting the tests to the SUT’s architecture
This workshop is intended for automation developers who already know and work with Selenium WebDriver.
Level 4 – Expert material. Assumes a deep level of technical knowledge and experience and a detailed, thorough understanding of topic. Provides expert-to-expert interaction and coverage of specialized topics.
- Personal computer/Laptop
- Google Chrome
- IDE for your favorite programming language (most examples will be given in Java or C#, but mostly all exercises can be done in other languages)
- Selenium WebDriver