Agile believer and excellent team player with an experience working in distributed international teams, using Agile/Scrum methodology. Sargis is initiator and organizer of the QA meetup Yerevan http://qameetup.am
Here are some of the events where he took a part as a speaker: Better Page Object Handling with Loadable Component Pattern @ Selenium Conf 2016, India, Jun 2016 Better Page Object Handling with Loadable Component Pattern: Implementation on existing project @ SQA Days 20, Belarus, Nov 2016 Selenium Testing on Chrome @ Google DevFest 2015, Armenia, Nov 2015 One Day of Quality @ QA MeetUp Yerevan, Armenia, Aug 2015 Web Application Testing with Selenium @ BarCamp Yerevan, Armenia, May 2015
Appium Dockerization: from scratch to advanced implementation
How to Dockerize Parallel Execution of Selenium Tests
Reducing end to end test execution time is key for software development life cycle that wish to implement continuous integration and delivery. Selenium WebDriver allows us to run e2e tests on web applications in different browsers. As it runs across many browsers and operating systems there are lots of possible capabilities to test. This workshop will help you to get started with the setup of dockerizing parallel execution of Selenium tests by cutting your test runtime up to 10 times. We’ll also look at how to run tests against a number of browsers and capabilities.
Easy Setup for Parallel Test Execution with Selenium Docker
Parallel execution of test cases is one of the important requirements of a modern test automation framework.
Generally, to run Selenium Suite in parallel, we use selenium grid and distributing tests across multiple machines which will reduce the time required for running tests. To run tests in parallel, we need to configure Selenium Grid with Hub and Nodes where the hub is the central point which will receive test requests along with configurations or capabilities. Based on the request received, the hub will distribute tests to the registered nodes.
Selenium has made a set of Docker images which are available on Docker Hub. We have Selenium Grid, and the browser images - Chrome and Firefox. There are also images with the debug versions which will let as view the test execution.
In this session, we will go through the Selenium tests parallel run setup and configuration.
Make Your Selenium Suite Faster and Reliable: Test Setup with REST APIs
Performance is one of the main painful areas of Selenium suits. Usually, engineers trying to login, logout, navigate, create data, execute an action from the UI via Selenium, then, in the end, performing test assertions. This creates serious performance issue for the Selenium suite and makes Selenium tests more brittle. Also, the problem solution could be better if the test data creation and deletion also will be done before Selenium will open the browser. This will help to create independent tests later to be able to run them in parallel.
Test Data Preparation: Tips and Tricks
Performance is one of the main painful areas of Selenium test. One of the most important points of improvements is Test Data creation and clean up. In this talk, we will discuss how to create test data via HTTP requests and clean it after the test run.
Optimization of the Selenium suite is important for us. In this talk, I will present how to create HTTP requests builder to create and clean up test data after the Selenium test run. This will help you to prepare particular situation before logging into web application via Selenium and test the exact functionality you need. After the test run the cleanup should be done again with HTTP request to avoid performance issues and minimize flakiness for other tests in the suite.
In addition, I will also present how to use HTTP code to set up session cookie and make configurations then extract cookie and pass to Selenium, which will help to skip logging in from UI for every test.
Better Page Object Handling with Loadable Component Pattern
One of the painful problems in Selenium automated testing is determining whether a HTML page has been loaded. This is especially the case when web application uses a JS heavy framework such as the popular AngularJS.
During this talk we will discuss how to handle Selenium Page Object pattern better with Loadable Component.The Loadable Component helps test case developers make sure that the page or a component of the page is loaded successfully. I will share my experience about the concept of the Loadable Component and Page Object patterns.