Балахонов Павел Юрьевич
Component-container approach in UI automation
Currently, it is very popular to use the decomposition of a page into components and isolate them into separate entities. The test connects the steps to interact with the component, and it is used in isolation from the page. On media projects in a company, web developers use a set of components and collect application pages from them. We use the same approach in automation. The talk proposes to consider the page as a container of components, in UI tests to use not isolated components, but to use them as part of the page. In terms of architecture, we get more structured tests. This will allow you to verify the integration of the component in the container (page) during the component validation phase.
We will also talk in more detail about the principle of the component's validator, its structure, and the architectural solutions that we use successfully, and which can be used on any project. This talk will be useful for beginning and advanced automation specialists.
Optimization of Selenium tests and acceleration of their support
Optimization and support of UI automated tests are the main and important stage of UI automated testing process in general. At an early stage of the introduction of the UI automation process and script coverage of autotests, little attention is paid to optimizing of test code, implementing design patterns, using universal validators, and using dynamic waiters. As a result, a significant amount of resources is spent in the future to support UI automated tests. As a result, there may be a situation where all the resources of the automation department go exclusively to support tests, there comes a so-named loop process and there are no resources left to cover the functionality of the project with new tests. This report examines techniques for optimizing UI automated tests for Selenium WebDriver at various levels of abstraction and analyzes errors that beginners often allow. These optimization techniques will help the beginning UI automation Engineer.