Have something to share about Test Automation or WebDriver?
Become a speaker now

Archive for January, 2018









How automation testing helps us to sell luxury bags

What is your first impression of a word Serenity? We also weren’t sure and thus checked the Urban dictionary. What we have found was the exact description of our test framework, which we have been using for 1 year already.

“Serenity is a loving, funny and caring person. When she’s in love, she loves hard. She will take you back even if you hurt me. She puts people over herself. Hardworking and smart. She doesn’t cry but when she does it’s streams create oceans. She is loud and will do her best to make you the best person possible. She sees beauty in everything but herself. But she’s amazing person to be in a relationship with. She’ll give you her mind, body and soul even when you don’t deserve it. Irreplaceable and hard to come by. Don’t give up on her because she won’t give up on you. She finds light in the darkest things. She’s the one you want to take home to your family. Athletic and always smiling. Serenity is not a common name and not a common person, so hold on to her.”
“Serenity is the whole package”
“Damn she looks good”

In my work, I would like to share with you our ups and downs, why we select Serenity and why sometimes we hate it but still love it. Why pure Selenium and BDD are cool and how Serenity can beats Selenide.

Live with me all the major periods of automation development in the Fashionette. Why is Serenity cool but not really?

Daria Bieliava

Daria has been working in the QA industry for about 5 years. As an Engineer is hands-on and result-oriented. Daria is an ordinary girl who is against injustice and bad code. A tester who enjoys life, enjoys writing automated tests on different test frameworks.

Layout Testing with Galen Framework

Layout testing seemed always a complex task. Galen Framework offers a simple solution: test location of objects relatively to each other on page. Using a special syntax and comprehensive rules you can describe any layout you can imagine. In this talk we will be talking about designing, implementing and running test cases with Galen Framework.

Can Yildirim

Working at Al Tayer Group as QA Engineer at Dubai. Can has 6 years experience about software testing. He has knowledge about major tools like Selenium, Appium, Gatling, Galen Framework and Robot Framework and CI tools. Also he is contributing Galen Framework nowadays.

Allure 2: new gen test report tool

Everyone involved in the automated testing has to examine the autotest results. The bigger the project is, the more results one has to review. The world keeps getting faster, some products release several times a week if not a day.

Allure Framework is a popular instrument that makes analysis of autotest reports easier. This talk will cover its new version Allure 2. One of its main advantages is extendability: now you can adapt Allure to suite your needs using a plugin system. Besides that, it has a lot of interesting features ranging from test environment and test retries to text fixtures.

Artem Eroshenko

Artem works in web app testing automation for more than 8 years. He has worked in different teams and occupied different positions up to the head of automation testing group. He has a vast experience with popular tools (Selenium, HtmlElements, Allure, Jenkins). Codes mostly in Java and Groovy.

Scaling execution of ProtractorJS on AWS Lambda with Selenoid

FaaS services (like AWS Lambda) allows flexibly run your separate functions with super-fast scaling, and great independency. Tests by their nature are perfectly fits for running in isolation. Theoretical limit of concurrent tests is millions, but for WebDriver tests problem is with avalilable browsers. Fortunately new hope is here – Selenoid, allows to scale your browsers farm to huge sizes. In this talk i want to show experiments about running NodeJS tests (ProtractorJS + MochaJS) into AWS Lambda and Selenoid as browser supplier.

Oleksandr Khotemskyi

Specializing on building WEB automated tests (Java, Python, JavaScript, TypeScript). Finalist, winner and judge at Ukrainian Dev Challenge (QA), speaker at different confrerences. Teacher at StartIT (ProtractorJS Automation). Now mostly focusing on JavaScript as a language for automated testing.

Deep dive into Selenium Waits

Implicit vs Explicit waits is a holy-war topic ever. But let’s dig deeper than just words. Let’s go thought the code and find out why there are so many different thoughts and how to deal with all of them in near perfect harmony.

Infinite improbability testing – execute all tests in parallel

100000 tests executed under half an hour – sounds like a myth? Well, we made it, and I’m going to tell you a story how we got there. Through surveys, we discovered that many companies desire to utilize the benefits from parallel tests execution to optimize their software development process. However, they struggle with the process. Lack of available tooling, documentation, tests data arrangement/deletion, handling E2E tests specifics like browsers, emulators, etc. We were one of this companies. Because of that, we created an open-source tool for the job. Throughout the presentation, you will find statistics where, depending on the type of the tests, the tests execution can speed up from 4- 40 times which makes the run of the 100000 tests possible for 27 minutes.

It will be shown how to utilize the tool, its various features and where/when it is appropriate to use it. Also, you will find example solutions to most of the common challenges in executing tests in parallel. We believe that in the near future the parallel tests execution will be a necessity, much like unit tests or continuous integration now. This will be one of the pillars for the companies to improve their competitiveness and effectiveness.

Anton Angelov

My name is Anton Angelov, co-founder and CTO of Automate The Planet Ltd. With more than seven years of experience in the field of test automation, I help people to write high-quality and maintainable test automation. Passions of mine are automation testing and designing test harness and tools, having the best industry development practices in mind. Furthermore, I am an active blogger and international speaker. Honored to be nominated for best QA in Bulgaria in 2017. Moreover, my articles have been published in international magazines a couple of times.

Xamarin.UITest. From Zero to Hero.

Xamarin.UITest is a C# test automation framework that enables testing mobile apps on Android and iOS. Mobile automation is not a piece of cake but Xamarin.UITest aims to provide a suitable abstraction on top of the platform tools to let you focus on what to test. This talk is not only an introduction of framework but also we are going to present its practical aspects, technical details, benefits and disadvantages. We will show a growing process from “Zero” – when you have only few local tests, to “Hero” – when you run your tests simultaneously and have fully integrated solution into CI/CD pipeline.

Volodymyr Kimak

Software engineer, public speaker and local user group organiser with more than 7 years of commercial experience. Interested in software design, development and testing of desktop, web and mobile apps especially in .NET stack.

Nadiia Pukhta

Really interested in mobile application testing. Has experience in UI Test Automation with Selenium and Xamarin.UITest. In the past worked as a frontend developer and became QA to be on the “light” side. 5+ years in software testing and development.

Flaky tests are a pain

A test that was green yesterday can suddenly become red – for no apparent reason. Nobody changed anything. Just the moon is not in that phase. Just the matrix has you.

I will show my collection of real examples of flaky tests from my experience. These are really tricky investigations, that lasted many days, weeks and even years!

We’ll figure out how to write tests so that they are stable and independent of the karma of the developer.

My talk will be interesting to both testers and developers – anyone who loves to solve unsolvable puzzles.

Arrange, mazafaka!

Every test should include 3 steps:

1. Arrange
2. Act
3. Assert

We can write tests that ACT: click buttons, fill forms, download files. Our tests can ASSERT: matchers, screenshots, even whole report portals.

But we forgot about the first step, we cannot ARRANGE. We use real databases. We send real SMS and Emails. We write hacks to close AD banners during test execution. It’s the reason why our tests become more and more complex, slow and flaky.

In this session we will learn again the basic step: how to prepare data and services for test execution.

Bro, manage test data like a pro!

Almost any application or software system manages data. It is hard to imagine test automation that is not affected by this fact. There are many differenct approaches how to prepare system under test, providing predefined test data: use application UI, invoke API methods, run business logic directly, access DB from test scenarios, etc. In this talk we will review most of existing approaches, starting from the easiest and the most popular ones and finishing with really tricky ways to manage your test data for large distributed systems. There is no ideal solution for every case or silver bullet, but I hope your toolset will become wider after visiting this talk.

Bad testability is the root of most issues in test automation

Through my career I have seen so many times how test automation fails or just built to be very inefficient in the first place. After many years I came to the point that true root of most issues in test automation lies in application testability. Remember how easy tests are created and demonstrated during talks at any conference. It looks like you can easily automate 10-20 test scenarios per day. Multiply this number on team size and you can get number 50-100 automated test scenarios per day. Sounds amazing? But in reality this number could be 2-5 for “successful” teams and 1-2 for average team. In this talk we will review how effort is split during test automation activities, what parts hide most of complexity inside and eat our time. Hopefully at the end of the talk we will have some good recipies how to speed up test automation and significantly reduce time spent on it.

Developer + Tester = Quality++

With Agile adoption many things have changed in quality assurance and tester role. Ourdays the whole team is responsible for product quality. But not so many people understand how such high level approaches work in practice, how developer interacts with tester, what stages each task passes on the way from requirements specification to customer acceptance, who is doing what at each stage.

I have met only few teams, where developer and tester work closely together on a daily basis. Some projects try to same money on developer’s time, others try to have independent testing team without influence from developers side. Developers also don’t understad how tester could help them in practice. But this pair is able to significantly improve product quality and avoid many common issues.

In this talk we will cover motivation behind pair work of develoeper and tester, concrete practices and approaches at different stages, and advantages that both sides could achieve from such work style.




Test Automation Puzzlers

Integration testing for microservices with Spring Boot

In my talk I will tell about challenges and questions which emerge in testing and test automation at microservices world. I will guide the listeners with practical examples of implementing integration and component tests using Spring Boot framework and TestContainers library. The talk will be interesting for beginners as a starting point to include microservices testing into the overall testing strategy.

Can accessibility testing be automated?

I would like to share basics about accessibility, my experience in this type of testing and also to talk about accessibility from automation perspective: can this type of testing be automated at all, what tools can be used, can accessibility testing be fully performed without people evaluation at all?

Automated testing in Playtika: the story of evolution

Playtika started from a single monolithic application several years ago occasionally covered with unit tests. But now we have sophisticated architecture with hundred of microservices that handle several games, dozens of platforms and hundreds of features supporting millions of users. This all should work like a charm day and night. Which is definitely not possible without automated testing. So I will tell how Playtika has developed testing infrastructure with different layers of testing; what kind of tests we have and what for; when and where we run them; how we monitor them and which reports we build; what kinds of tools we use and why and more else. But the most important is which pitfalls we met on our way and the lessons we extracted from it.

Don’t you like integration testing as me?

I will talk about integration testing nightmare (around 100 integrations with 3rd parties) and decisions that we did to get rid of integration testing. All talk is based on real project.

Powerful gamification

This talk is about how to introduce effective gamification on a project. We will talk about different gamification modes and will take a look into real-life examples of successful gamification implementation for Test Team activities. We will review batch of artifacts and case-studies, including lessons learned and related highlights. Within main takeaways there will be re-usable instruments and piece of inspiration to start gamify your environment.

How to get more from DevOps and Test Automation

Nowadays, many organizations are challenging agile, and focus more on DevOps as their brand new ALM methodology. Devops can be regarded as a next generation methodology beyond agile, especially with it’s special focus on test automation.

If you want your organization to survive in today’s agile world, you need to learn and adapt to the changing landscape of Devops and utilize test automation to help speed delivery and high quality. When it comes to a successful DevOps transformation, test automation is one of the keys.

For some reason, some people are afraid of getting their hands dirty with Devops and test automation since they do believe that they don’t have the know-how, the tools, “enough” time, and, most commonly, the staff and budget. Of course, some approaches can be very difficult, take a lot of time, and be very expensive. But they don’t have to be. Within my session, I will discuss some of the test automation approaches we (as Keytorc) have successfully implemented in Devops environments and while doing so I will try to keep all the blocking factors as low as possible.

Once correctly implemented, these solutions may bring many benefits into your Devops environment. Some of the most critical ones include: a powerful foundation to cope with the software testing challenges and a systematic approach to shorten the time-to-market delivery by supporting the quality of your products in preliminary stages.

My session mainly focuses on the challenges of Devops and Test Automation and it will guide attendees to practically utilize different aspects of test automation based on the experiences of Devops and Agile.

Baris Sarialioglu

IT professional with 15+ years of experience as Information Technologies Consultant, Software Engineer, Software Developer and Software Tester for many different organisations.

Highly experienced in Software Development Life-Cycle, Software Project Management, Business Analysis, Agile Methodologies, Usability, User Experience (UX), Quality Assurance and Software Testing.

Published a number of papers and books within the Software Testing profession and contribute to the field by regularly attending conferences as a speaker, panelist, lecturer, moderator and contributor.

Currently, he is one of the managing partners of Keytorc Software Testing Services, where he holds the responsibilities of delivering test consultancy, outsourced test management, and software testing training (including accredited ISTQB trainings).

Test infrastructure on steroids

In this talk, I am going to show approach to which helps to integrate test automation into delivery pipeline. DevOps practices become more popular and test automation engineers should follow them. I will show the way how we implemented flexible browser cluster, dockerized services on-demand and infrastructure as a code. Utilizing capabilities of Ansible, Selenoid, Jira test rail

Appium meets Selenium and Docker

This talk will showcase how to leverage containers to solve UI-Test infrastructure for Android.

Budi Utomo

Budi Utomo is a Software Engineer, open source enthusiast and a member of Appium organization on GitHub.

JDI 2.0 in examples

JDI is a great framework for UI testing but me moves forward. JDI 2.0 provides not only a tool or framework but a list of approaches and practices for testing. There are some breaking changes in 2.0 version, but most JDI features still available in JDI 2.0.

In this master class session I would like to demonstrate real QA automation tasks and how easy they can be resolved with JDI 2.0. Master class will cover the Web UI automation on JDI based on Selenium. It has “task – solution” format. No theory. No water. Only practice.

The essential tools for test code quality improvement

Is it reasonable or not to control the quality of a test code? Why do Software Engineers in Test have to follow the same rules and conventions as developers do? Is there any tool which may help to partially automate and simplify the code review process? Should it be integrated into main development flow?

It’s time to change the way you look at Test Automation. In this talk you’ll see practical examples of the use of code quality tools, and understand how they can be applied in the CI flow.


Concise and elegant automated tests?
Pain free ( almost 😉 ) web UI test stack?
More time for drinking coffee/playing Cuphead/starring into the void* ?
Jump in, we’ll talk Lombok, Vavr, Owner, why you should use ready solutions and how to make tests more concise and readable. Vaper and/or hoverboard required.

Create Testing Environment with Docker for Integration Testing

Over the years, I’ve learned one key lesson from my experience in automating test cases. Regardless of how much effort I put into making my test suites the most well-designed, high-quality work of software engineering, the fact remains that all these test cases are useless if I don’t have a test infrastructure to adequately support running them. In my experience test environment availability is very limited and I need to be able to work with minimal resources.

For example, on a recent project I was responsible for, I had a suite of REST API tests, which needed to be run continuously in a collection of environments that mirrored a variety of customer environment configurations (OS, database server, application server, browser).

I could have gone the traditional route of having a permanent environment in place for each environment configuration but this would have been very draining on the limited resources available to me. Also, in my case, my test suite was made up of API tests, which meant they executed relatively quickly (compared to say UI tests). To have multiple environments dedicated to running a short test cycle a few times a day seemed to me like a massive waste of resources.

To solve this problem, I looked into using Docker containers. This way I could configure, create and remove environments easily, quickly so as best to suit our own environmental requirements.

So in this talk, I would like to take the audience through my journey of how I used Docker and CI tools to overcome the challenges I had around lack of test infrastructure resources.

Lightning talks

Testing on prod (without pain and humiliation)

In this talk I want to share our own experience testing on prod. Our users help us test and customize our algorithms and do not even know about it!

How it works?

Let’s discuss…

Pandora’s white box

Most of the time in testing communities all over the world discussions about “right way to test the system” are going from the “black box” point of view. At the same time “white box” assumed to be prerogative of developers.

I’ll try to answer the following questions:

– how to prevent developers from writing wrong code?
– how to inject failures in code during the testing before it will fail in production?
– what is source code parsing and why should you care about it?
– social coding analysis and coverage – what this can give you? “

Report Portal use cases with maximum value

Powerful tools give a lot room for improvements. In order to make it valuable for you, I define your way of configuration. This talk will represent use cases of ReportPortal and the most beneficial configurations of usage. Based on real project examples, with collected metrics and efficiency improvement for them.

Codeless Visual Testing

Record-playback tools have been used by countless applications, in order to test their UI functionality. In this talk we’ll take a look at how you can gain confidence in your application by using Selenium IDE in order to visually test your application without writing a single line of code.

Performance testing of microservices in action

Internet changed our lives. We no longer go to book store since there is Amazon. We no longer watch TV since there are YouTube and Netflix. We tend to migrate into Internet and this is generates huge amount of traffic. This brings us new challenges but old solutions fail to keep pace with changes.

During past few years microservice oriented design became standard for distributed high load systems. It’s been proven by lots of companies including FANG (Facebook, Amazon, Netflix and Google) so at this stage efficiency of this approach is indisputable. Unfortunately there is no silver bullet and with all good parts we’ve received operation complexity, configuration management complexity, difficulties with debugging and tracing, instability of interfaces and performance drawback caused by expenses of IPC.

Goal of this talk is to get through performance analysis process of simple calculator application implemented as a set of microservices with following FOSS toolset: k6 and gatling for traffic generation, prometheus for monitoring, perf Linux profiler and FlameGraph project for flame graphs generation.

How to test Artificial Intelligence and Machine Learning solutions?

Testing community is discussing how machine learning can find bugs and replace testers. Meanwhile the reality is more boring and not so much futuristic. Engineers are releasing machine learning and artificial intelligence services that should be tested. Based on real experience of delivering such products I want to share how different such testing is from regular solutions and what are possible problems. After my talk you’ll have a starting point to test this AI and ML magic once you are faced with it.

Bug prediction based on your code history

The talk is about a possibility of creation non-static code analyzer which will point a dev team to some unobvious bugs in the system based on machine learning technics.

We will become acquainted with Weka — the machine learning tool for exploratory development of the algorithm, also, we will take a closer look on basic algorithms for classification: Decision Trees, SVM and Naive Bayes classifier.

Real life examples will show you how the development life cycle can be improved with AI technics.

BDD’s rose-colored approach

Talk about how to start automation fast in several teams at the same time, to ensure the unity of technical solutions, and do not lose in quality as well. Explicate the BDD library Akita that allows our teams to deliver a new feature completely covered by autotests with relevant documentation for just a week-long sprint.

Mobile Peer 2 Peer Communication Testing

Basic functionalities of a peer 2 peer communication application are text, voice messaging, VoIP and video calls. In order to test its functionalities, we need more than two devices to communicate with each other. There are also network interruptions / changes or app notification installed on mobile device which can harm the quality of communication and application.

In order to automate regression test of those kind of application, we have extended Appium and Selenium Grid where we are able to cross communicate “n” number devices with each other. We also created a layer manipulating the mobile devices’ Bluetooth, wireless and other features.

Right now, we are able to automate P2P appliications test with more than 100 devices varying from iOS to Android.

Organization of successful automation

In many resources about automation, we can find that first step in automation is choosing the right tools. But is it the best first steps? In my experience as QA Manager, I saw many failed automation projects with strong engineers who were successfully solving really difficult technical changes but they failed in an organization of automation process. They miss such things as test cases prioritization, MVP, the balance between automation value and framework complexity, helping POs and BAs to execute UAT in different environments, advertising automation framework to stakeholders.

So in this talk, I would like to focus on organization automation project, how to make technically poor automation framework successful in the eyes of stakeholders and to have maxim value for product quality.

Selenoid: get rid of Selenium Server!

Browser tests are known to be the flakiest ones. This is partly because browser infrastructure is complicated to maintain. But the second reason is – main stream browser automation tools such as Selenium server are far from being efficient.

As your company grows – your browser automation infrastructure should easily adapt to increased loads and new requirements. Unfortunately this is not so easy to get really scalable Selenium cluster using only the main stream tools. But there are some new open-source tools and approaches that can be used to deliver really scalable Selenium cluster.

This master-class covers an emerging browser automation tool – Selenoid, a truly efficient replacement of the standard Selenium server. I will explain how it works and why it is so fast. I will show in details features like video recording, sending logs and statistics to centralized storage and how to easily visualize this data.

Mobile automation: three act tragedy

This talk is about challenges you may encounter while trying to set up mobile automation infrastructure yourself. Three main cases are shown in detail: Android mobile automation, iOS mobile automation and issues with real-devices. I’m going to show the mainstream approaches on how to do this as well as enumerate various issues you should be aware of. The main goal is to give a general understanding of how mobile automation differs from desktop automation. This should help to make a decision – whether such infrastructure research should be done inside your company or outsourced to online services.

Make yourself comfortable and leverage Selenium with Python

Every automated testing system evolves over time. Let me tell you a story about how we started testing CloudForms. First with standard libraries and tools, then gradually developing and improving our own tools. Python played an important role, one which gave us the opportunities and freedom on how to approach the code. We subsequently did two refactors of the system. In the first, we focused on abstracting the UI interactions out of the test. Second, we carefully continued to iterate with feedback from our successes and failures. Instead of intertwined spaghetti code, we designed a couple of stand-alone libraries that jointly power our testing system with focus on declarativity. One library represents the abstraction of the UI, inspired by good ideas from Page Objects, but doing things better. The second one takes care of navigating around the UI in an intuitive way. And there are other ones as well. So let’s go through this story together and watch how we leveraged our Selenium testing with Python.

AWS hurries to the rescue

Very often I’m finding that many people in IT world either don’t know about AWS or any other public cloud or doesn’t have enough experience with it. I often see questions and problems through chats, Slack channels or forums that can be easily solved with AWS help and very often this solution will be very cheap or even free.

In this talk, I want to share my experience of using AWS services for solving different tasks in my daily work not only for testing but in many other areas as well. I also want to introduce AWS to the people who have no idea about what cloud computing is. I’m not affiliated with AWS in any way and they don’t pay me for this. It means that there will be no marketing bullshit, but only my personal blood and tears.

In my talk, I will mention both foundational AWS services, like S3 or EC2, and new things, that may become a “”Next Big Thing””, like Lambda. I will share my experience of using them, problems that I found and results that I’ve got.

Vitaly Slobodin

Vitaly is a co-founder of Elonsoft and IT61. Before creating a company, he developed various projects with different platforms and frameworks. He has experience with .NET, Node.js and Ruby on Rails. He loves open source software and browsers. Joined the PhantomJS project in 2013 and later became the core developer. Believes that browsers (not robots) will rule the world. A big fan of pure and solid code. Perfectionist.

Aliaksei Boole

Aliaksei is a not bad QA Engineer, they say. He has strong skills in web ui automation, especially in monkey patching via JS. He also works on performance testing and back-end API test automation. Aliaksei is open to new technologies and approaches. Not captured in relations with aliens.


QA Dnepr





LVIV IT Cluster

IT Arena

Nikita Makarov

More than 8 years developing test automation at outsourcing and product companies. Has experience in automation of Linux based embeddable OS, complex VPN-solutions for business, various hardware and software platforms. From January 2012 works as test automation group lead in OK.RU.

Canberk Akduygu

Canberk works at Testinium as the Chief Test Architect, he is responsible for the automation and performance testing team who are specialized in Selenium and Appium. Canberk is the co-product owner of Testinium tool.

Andrei Solntsev

Andrei is a software developer with 15+ years of experience in enterprise software development and automated testing. Author of selenide.org – open-source library of concise UI tests. Active speaker at conferences and communities. Aggressive fan of clean code, XP, automated tests and TDD.

Kateryna Shepelieva

Lead Software Testing Engineer at EPAM Systems with more than 8 years of experience in IT. Currently broadens her expertise in accessibility testing which is a highly specialized skill but gaining popularity nowadays. Was a speaker at QA Fest conference and many other testing events. Really passionate about what she does.

Yevhen Rudiev

QA Automation engineer at GamePoint. Primary focused on the development of distributed systems. Agile practitioner. Has deep experience in 3rd parties integration. Now is interested in microservices architecture.

Oleksandr Romanov

Main professional activity of Oleksandr is dedicated to make test automation efforts more effective and engineers more productive. He has 6+ years of experience implementing test automation solutions at Sitecore, SoftServe and Deutsche Bank. Oleksandr is language agnostic – prefer to use specific tool depending to specific task.

Tomer Steinfeld

Tomer Steinfeld is a 22 years old frontend developer at Applitools, self taught web and iOS developer based in Tel Aviv. Recently he started working on Selenium IDE TNG, that is already published on the chrome webstore.

Alexander Kachur

Scala enthusiast with 8+ years experience specializing in non-functional automation testing and development. Was working for Silicon Valley and EU startups, banks and hospitality companies. Interested in systems performance, functional programming, microservices, cloud computing and data analysis.

Igor Khrol

Automated testing specialist at Toptal, team lead in Analytics department. About 10 years experience in IT in various roles: engineer, architect, manager, consultant, trainer. Experience in the majority of popular tools (Selenium, HP QTP, TestComplete, JMeter). Currently I’m programming mostly in Python and Scala but used to write in other languages (Ruby, Java, C#, JavaScript, VBScript).

Dzmitry Humianiuk

11 year in IT. Java dev background. Delivery Manager and Open Source fellow. Major interest: ML/AI in test automation. Leading solutions development in Test Competency Center. Report Portal Product Owner.