DeveloperWeek Europe 2021 DeveloperWeek Europe 2021
Get your ticket or log in to build your agenda.

4 Pillars of Successful Agile Test Automation

- BST
Main Stage
Join on Hopin

Mesut Durukal
Rapyuta Robotics, Test Automation Lead

Mesut has BSc and MSc degrees from Bogazici University Electrical & Electronics Engineering. He worked in Defense Industry for 7 years and managed the testing activities in a multinational project. He has a proficiency in CMMI and PMP with a broad range of experiences under his belt.

After that, he worked for Siemens A.G in system testing team for 4 years. He had the technical lead position in Istanbul QA office where he managed 18 people and represented the site in the global organization. He took the responsibility for V&V activities for a cloud-based open IoT platform containing lots of microservices and acted as a Product Owner. 

Currently, he has been working for Rapyuta Robotics, Tokyo. In the robotics domain, his expertise is focused on test automation. 

His certificates are: PMP, PSPO, PSM, ISTQB CTAL TM and he is a frequent international speaker with a wide range of various talks: https://www.mesutdurukal.com/conferences.html


Motivation:
-------------
After executing a project to test a cloud-based microservices platform, we experienced a lot of challenges in both technical and social manners and tried to develop solutions to cope with them. Finally, we have wrapped them up to make a list of golden rules to successfully manage a test project. The purpose of this talk is to give insights about how a test automation project is managed.

Our problems were:
----------------
Technically, if not managed properly, automated testing will lead to extra costs and could even be less effective than manual testing.
From another aspect, at some point, we had too many complaints in our retrospective meetings about the heavy deployment activities and redundant executions. We had lots of flaky tests, execution lists full of not clear test definitions. Everyone was sick and tired of maintenance issues and the team was not happy. We took actions to improve motivation in the team.

Our 4 fundamental solutions are:
--------------
* Being truly agile: Adapt new solutions quickly.
* Manage the progress: Be aware of what is going on by setting KPIs to track & monitor with tools like CloudWatch, Grafana
+ Technical part: Automation principles for the sake of robustness.

* Solutions to reduce flaky tests & analysis effort & costs: Code demos on Java API polling libraries, Selenium usage and others.
* How we solved flaky tests: Adaptations into the code and observing the effect of each application. A few examples are polling mechanisms (safe wait methods) and test design techniques
* For maintenance efforts: We keep test history in the pipelines and develop helper methods to improve quality.
Improve coverage from different aspects to reduce escaped bugs.

* Team spirit!

Results & Conclusion
---------
After application of our proposals, we observed that waste is eliminated by prioritization and removing duplicated or dispensable work. After all, we believe that this submission has interesting content which can make great attention. Instead of theoretical claims, we discuss faced challenges and applied solutions. We analyze effects of solutions with before-after situations, graphs and evidence. Instead of what to do, we go over how to do it.

Takeaways
-----------
Proposed approaches can be applied by any organization by adapting according to the related work to achieve time and cost reduction. After this talk:

* Attendees will know our 4 golden milestones for successful agile testing: Being truly agile, Managing and improving internal processes, building a Good Automation Framework and Improving Efficiency.
* Attendees will be able to realize the importance of test coverage and see how it affects defects coming from production.
* Attendees will be able to realize the effect of test suites on sprint planning and execution effort.
* Attendees will be able to have some insights about increasing efficiency.
* Attendees will be able to utilize automation not only in implementation, but also in Executions, Reporting and other phases.
* Attendees will be able to analyze bugs. Just resolve and close them, or gain some lessons-learnt from them?


Outline
Introduction & project background
----------------------------------------------------------------
Importance of agility: Quality mindset, voice of customer
Demo 1: Collecting KPIs & metrics and monitor them on CloudWatch.
----------------------------------------------------------------
Automation Principles
Demo 2: Code Blocks to reduce test smells on Java, Postman and Selenium.
----------------------------------------------------------------
Efficiency & Team Productivity
Demo 3: A game showing the effects of team work.
----------------------------------------------------------------
Close & Questions