{"data":{"allMarkdownRemark":{"edges":[{"node":{"id":"43a222cd-fe2c-5cb5-af76-53e7d4ad29ec","frontmatter":{"category":"QA","title":"The journey of a QA engineer in AUTO1 Tech","date":"2022-03-31","summary":"Check out Dhivya's journey in our QA department & how our stack and team contributed.","thumbnail":null,"authorName":"Dhivya Venugopal","authorDescription":"Dhivya is a Junior QA Engineer in the AUTO1 Berlin office.","authorAvatar":{"relativePath":"pages/qa-engineer-journey/dhivya.jpg","childImageSharp":{"resolutions":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAUABQDASIAAhEBAxEB/8QAGAABAAMBAAAAAAAAAAAAAAAAAAEEBQP/xAAWAQEBAQAAAAAAAAAAAAAAAAABAAL/2gAMAwEAAhADEAAAAXWvULaZ6pqGyQn/xAAcEAACAQUBAAAAAAAAAAAAAAABAgADBBESIRP/2gAIAQEAAQUCpnisScxMquzerXOJXGkTon//xAAVEQEBAAAAAAAAAAAAAAAAAAARIP/aAAgBAwEBPwFj/8QAGBEAAgMAAAAAAAAAAAAAAAAAAAECECH/2gAIAQIBAT8BUTb/AP/EABwQAAEEAwEAAAAAAAAAAAAAAAAQESFBARIxMv/aAAgBAQAGPwIy/KSTY8EDUn//xAAbEAACAwEBAQAAAAAAAAAAAAABEQAxQSFRgf/aAAgBAQABPyHykFbsz0UKMJmkC9nELAfyNrrluBBEa2WJpCJ//9oADAMBAAIAAwAAABCHMMH/xAAZEQEAAgMAAAAAAAAAAAAAAAABABEQITH/2gAIAQMBAT8QBVM1Hrj/xAAXEQEBAQEAAAAAAAAAAAAAAAABEDFB/9oACAECAQE/EE07BhP/xAAcEAEBAAMAAwEAAAAAAAAAAAABEQAhMVFhcaH/2gAIAQEAAT8QUhkEVKfHjA10KQp0jMUp9wY6EihV16w0n7o+2sU+sPC/mXadbXuBNStjW5gkDgZ//9k=","width":50,"height":50,"src":"/static/d37e68c1bb8fcdb464c251c9a15e7dbe/d2d31/dhivya.jpg","srcSet":"/static/d37e68c1bb8fcdb464c251c9a15e7dbe/d2d31/dhivya.jpg 1x,\n/static/d37e68c1bb8fcdb464c251c9a15e7dbe/0b804/dhivya.jpg 1.5x,\n/static/d37e68c1bb8fcdb464c251c9a15e7dbe/753c3/dhivya.jpg 2x,\n/static/d37e68c1bb8fcdb464c251c9a15e7dbe/31ca8/dhivya.jpg 3x"}}},"headerImage":null},"html":"<p><a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/5403ba9bebd07a50595eb7001d9728b7/a402e/1.jpg\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-wrapper\"\n    style=\"position: relative; display: block;  max-width: 590px; margin-left: auto; margin-right: auto;\"\n  >\n    <span\n      class=\"gatsby-resp-image-background-image\"\n      style=\"padding-bottom: 66.8%; position: relative; bottom: 0; left: 0; background-image: url('data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAANABQDASIAAhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAAAAUE/8QAFQEBAQAAAAAAAAAAAAAAAAAAAAH/2gAMAwEAAhADEAAAAce+QSqjk//EABoQAAMAAwEAAAAAAAAAAAAAAAACAwEQERP/2gAIAQEAAQUCmy5FnJjxmd13J//EABcRAAMBAAAAAAAAAAAAAAAAAAABEgL/2gAIAQMBAT8BlE5P/8QAFxEAAwEAAAAAAAAAAAAAAAAAAAERAv/aAAgBAgEBPwGsuj//xAAbEAACAQUAAAAAAAAAAAAAAAAAAQIgISIykf/aAAgBAQAGPwLNcLSRvR//xAAaEAEBAQEAAwAAAAAAAAAAAAABABFhMYGR/9oACAEBAAE/IS8x7BH0tnXwhSoXZ+3/2gAMAwEAAgADAAAAENj/AP/EABcRAQADAAAAAAAAAAAAAAAAAAABUWH/2gAIAQMBAT8Qitg//8QAFxEAAwEAAAAAAAAAAAAAAAAAAAFBYf/aAAgBAgEBPxBzZof/xAAcEAEAAgIDAQAAAAAAAAAAAAABABEhQVGBoeH/2gAIAQEAAT8QNXWifSOykLvR9hsrN5nKlpHqP0k//9k='); background-size: cover; display: block;\"\n    ></span>\n    <img\n        class=\"gatsby-resp-image-image\"\n        style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;box-shadow:inset 0px 0px 0px 400px white;\"\n        alt=\"1\"\n        title=\"\"\n        src=\"/static/5403ba9bebd07a50595eb7001d9728b7/f8fb9/1.jpg\"\n        srcset=\"/static/5403ba9bebd07a50595eb7001d9728b7/e8976/1.jpg 148w,\n/static/5403ba9bebd07a50595eb7001d9728b7/63df2/1.jpg 295w,\n/static/5403ba9bebd07a50595eb7001d9728b7/f8fb9/1.jpg 590w,\n/static/5403ba9bebd07a50595eb7001d9728b7/85e3d/1.jpg 885w,\n/static/5403ba9bebd07a50595eb7001d9728b7/a402e/1.jpg 1000w\"\n        sizes=\"(max-width: 590px) 100vw, 590px\"\n      />\n  </span>\n  </a></p>\n<p>Hi there! My name is Dhivya and I started my career as a Software Engineer in Tech Support and Testing. After a brief sabbatical, in the mid of 2021, I decided to get back into the workforce. I was searching for the right opportunity to kickstart my career and I was very excited to land a job at AUTO1 as a Junior QA Engineer.</p>\n<p><strong>Onboarding experience</strong></p>\n<p>Having previous experience in manual testing, I was greatly looking forward to this opportunity to deep dive into the world of automation testing. Onboarding happened seamlessly thanks to the onboarding handbooks and Confluence resources specially curated for a new joiner in the AUTO1 QA team. It briefed the step-by-step process on how to set up and get ready for the automation testing at AUTO1.</p>\n<p>The CAT (Core Automation Team) people were readily available to guide me in each step, right from setting up the environment, software, and configurations. This was a first-time experience for me, seeing such a dedicated team exclusively being there to support the entire QA team.</p>\n<p><img src=\"/static/2-06a454814194fbad5f8c98269b9fb867.gif\"></p>\n<p><strong>CAT</strong> (Core Automation Team)</p>\n<p>I found myself doing extensive testing of SHIFT, our internal test case management software developed and used by AUTO1. This gave me some in-depth knowledge of the software itself and also the processes and automation structure set in the company.</p>\n<p>In the months that followed, I was excited to take up some solid training from my amazing mentor, who introduced me to the project and the automation tests we had in place. He was very resourceful and immensely patient and carefully introduced me to each element of the role, gradually allowing me to explore the various tasks I would eventually take up. This gave me ample opportunity to get a deep understanding of the project and build a good rapport with my team members and also established a clear goal for me. I was soon writing my first automation test and found the experience thoroughly organic and gratifying.</p>\n<p><strong>Automation Testing at AUTO1</strong></p>\n<p>Firstly, I understood why Automation Testing has become a quintessential part of current testing standards and how it helped our teams achieve great speed, efficiency, and quality. The automation tests and resources were brilliantly abstracted in several repositories and accessed by the various QA teams.</p>\n<p>With 600+ microservices, automation testing is the best way to ensure that the entire platform works efficiently. We use a variety of test automation tools including Selenium and Playwright to drive the automation. The entire framework has been abstracted into a common module in repositories that has helper methods pertaining to our domain. Each team has their dedicated repositories that carry out regular automation test runs, generating regular test reports and this structure helped us keep track of the health and sanity of the systems we worked with.</p>\n<p>The Automation Testing process at AUTO1 looks just like this:</p>\n<p><a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/55fa7b0fddafca9ed49b6c26a2be6326/81d54/3.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-wrapper\"\n    style=\"position: relative; display: block;  max-width: 590px; margin-left: auto; margin-right: auto;\"\n  >\n    <span\n      class=\"gatsby-resp-image-background-image\"\n      style=\"padding-bottom: 56.25%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAALCAYAAAB/Ca1DAAAACXBIWXMAAAsTAAALEwEAmpwYAAABP0lEQVQoz61Ry0rEQBCMv+SX+Ame1IMHr7oX/Q1/RLxqEMWFVRQWPIkgPmaTbCabZJ5d9oSJuyysi2iFojrdPTXdTEJECYBT5pDjS9aUNQ26in09KPOC4xFzKwngYIOTd1iBxpd4FCmm9gNrsP9tyLyKScPmjtVprZ0QwlW1dLWWTpnWlaV03vuu3vcxdTy7u2h4HTKxCdZb3IhbEH/LGL1INLprC/0BNpb2VhqWRmKYj2CVRZZlyPMceVHw2C0eXhsUzdww3L/WsFUtpmwAT6hmFSZiAm0MjFLIhICU1a8mJPJEsq2pMDV1/+h2p5m1lNU1eee63E+GaUwqbjDhcZS35uz93jzJNxPGe64qc/4pzMx5Ex+v07BQPLuzaDjG33HQGwZuM4+ZR3zzgHXgoy6zz9O8fsg8YW4m/42w7Rfe9dEFZoPW0AAAAABJRU5ErkJggg=='); background-size: cover; display: block;\"\n    ></span>\n    <img\n        class=\"gatsby-resp-image-image\"\n        style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;box-shadow:inset 0px 0px 0px 400px white;\"\n        alt=\"3\"\n        title=\"\"\n        src=\"/static/55fa7b0fddafca9ed49b6c26a2be6326/40fad/3.png\"\n        srcset=\"/static/55fa7b0fddafca9ed49b6c26a2be6326/707e9/3.png 148w,\n/static/55fa7b0fddafca9ed49b6c26a2be6326/649e0/3.png 295w,\n/static/55fa7b0fddafca9ed49b6c26a2be6326/40fad/3.png 590w,\n/static/55fa7b0fddafca9ed49b6c26a2be6326/b3fef/3.png 885w,\n/static/55fa7b0fddafca9ed49b6c26a2be6326/301c0/3.png 1180w,\n/static/55fa7b0fddafca9ed49b6c26a2be6326/81d54/3.png 1280w\"\n        sizes=\"(max-width: 590px) 100vw, 590px\"\n      />\n  </span>\n  </a></p>\n<p><strong>Test data management using SHIFT</strong></p>\n<p>The test cases, scenarios, and strategies are maintained in SHIFT, our internal (and soon to be open-sourced) test case management system. Our QAs make use of a test data tool which is integrated to SHIFT. The 100+ types of test data required by the teams are generated using automation suites that run in Jenkins. This test data is then queued in SHIFT and as a result increased the productivity of our QA team by reducing the effort for manual test data creation. Our director of QA has briefed this here <a href=\"https://auto1.tech/faster-automation-tests/\">https://auto1.tech/faster-automation-tests/</a>.</p>\n<p><strong>Seamless Integrations</strong></p>\n<p>Our CI system, Jenkins, is wired to run these tests against our various QA environments. The integration of SHIFT with Slack, Jenkins, and Jira has helped the teams immensely. The status of Jenkins jobs/sanity suites is notified in Slack. The time taken to debug the issue is hugely reduced since SHIFT displays a precise list of failed tests including the screenshot reference, which helps me to quickly understand the exact point of failure. Once I have identified the issue, I fix it and test it locally, then push the branch to our repository. The process is set in such a way that merge can be done only after review, which gives me more confidence and validation for the proposed solution. This helps me address the issues faster and get the system up and running. This is indeed why the QA team at AUTO1 is one of the key pillars of the Engineering team.</p>\n<p>My automation testing journey at AUTO1 could not have been this impactful if not for this perfect blend of the best tech stacks and resources, and most importantly, my amazing team. My learning on the job has been very effective and hands-on, and it makes each day filled with new challenges and new learning opportunities that help my work create a real impact.</p>\n<p>From the very many opportunities that came my way and the deep learning curve it has presented me with, I now realize that - <strong>the journey has just begun!</strong></p>","fields":{"slug":"/qa-engineer-journey/","tags":["auto1","engineering","testing","QA","social"]}}},{"node":{"id":"0e79f71e-bac7-5c18-b5ae-ae1cec933364","frontmatter":{"category":"QA","title":"Efficient testing - Test Strategy","date":"2021-10-08","summary":"The first article in a series of articles focusing on efficient testing.","thumbnail":null,"authorName":"Michal Chytroszek","authorDescription":"Michal is the QA lead of the Car Journey associated teams.","authorAvatar":{"relativePath":"pages/efficient-testing-1/Michal.png","childImageSharp":{"resolutions":{"base64":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAIAAAAC64paAAAACXBIWXMAACE4AAAhOAFFljFgAAAEyklEQVQ4yx2Qe0xTdxzFr9Dee3/30dpCRQqsQofyEEQpT8v6ABwgUPoASpUiMigKHeVReZTy0BYEh6TVtohKsbCNqAiFKPhgY3GYqAPMhkaWzEyXbG5z2ZZliX8sY5clJ998//mcnHMgg83Tah28e+2k7Uxb36Uxy/B4w1mP4bSr8WRvtjQ5I57X47R3uYY1avkxfZX+hL5CKXbUZpbLJVVHiiDLN/+euvfDl4/mHj24dnXh4f1Xv0y/+Htw6fehlbfywxWi2OCx5VfO1bfuJ3/VWFy9o580G/WL5ysHLnpu3ZyFWj//o8O7dnv5q/kHS947M3efPn/8+rfTX/w0+PXG8c7+tChu0+BQdfegXG/pu70+v/6yratjskfjmrhxzjUCGRfedCz8emlqbuaze8vfrV9f+VZfU5knTTZYBuptngOJkbWGWm1pcUpyYk2T0dRmqNOVTnRrHOesDVUlkME+1uC62ugY7xy91uWezN2/dxcORTKgZC5Q5OWLBRFFMmleekJq3E5VrrDq6OHGD6tnzpW2dylOlL4HWV9unH650ff9P2d+3miafiiPZjsVPLcywFPo156zI3k3L1McJ0qKEQkiNIdy7cPOZrNJeZinqhRrVRlQ48Wp5pFZ08h0z/iMuX/AKg/3loXNargLWn/PIX62MFp+MEEiTk3dHaKV729oNqoz99QXBLVo4oqyEqDe8VvOqzfdc/cvTM17LjsvHxEURm01p3F0e4haEV99ME2pSpfnC3X52ztNOaOrb0ZbBet96NDxhPJDBdDd1bVnKzf+fHZlbu3FWH+HVxM2URQ6VcQbzd3mLQmpFocnJsY0lPMrlL4HFUzPpOO6VeIyZelbzCp9N9Qy/Wzx4eKPT9w3nzx3zy/OdmtsGQH6ff7mRMZIQYBKEiMWhEglHJmCa+zQdtts5o/sirreYrNDVtsBtc6s9dx5ar+zapl9fGrp9YBzyKMK7s0MtmWSLYWJkXsTynRHjfYLdYOjdbbrOqu73GwvrOss6XTJDFZI//GDdu9y/8K62btSc35SmJ5dKeTqkvzUsUQEf0dQME+Up9G2n6/q81RYhss6HdqWM7Jqk6p9KFdvgeo/Xapz3pDK1Pxd0SwCp/v44BgRzsEJBN6yxRem03GaDxOGRPkardlR3NhXXG/NLm/KMpyVVrRBxomlhP1SGIIQmi8GAIskEASFaHQUhnGAogBlEgSB+PBC+craroJjZpnOlK4+Li5rFhbqoIr+KwH+fjiG4BhKAJRFYAwcENRPXRzdFEBJgHJYzKwSXf7RxpxSvViuFRYcScophuLfVwZu8wOIL0BpBEZn4YBNiYExCUASgEGgGIqQGMLAkLSMvJziDyT56tQDBXHvZUclSaFIsYIbGECgvghCwwHMJgCbRCmxCJRFUjCgYCaOMgEtIipGmJEnSJVEx6cEvhO2LZgHCVJEASyCxGAEoQMU3mQIqie6dfMBJE61RthMwMThwO3bY+NTouME/KgYNjeY5HCg0CD/QDZB4hRJg2E65bIZEv9f1BBg05RNYiwCYbMZEbH7dkbH8sIjWIFBwI8NZWuqOAyEScIYSqPBvgigAwBjGExNCFA6RdLoNCoIi4EyGei7UbFhuyJDQncw/P0o+/8A3meRLxNk0Z4AAAAASUVORK5CYII=","width":50,"height":50,"src":"/static/52659ecfce9ed71e567bddef5d9c1b15/45876/Michal.png","srcSet":"/static/52659ecfce9ed71e567bddef5d9c1b15/45876/Michal.png 1x,\n/static/52659ecfce9ed71e567bddef5d9c1b15/eb85b/Michal.png 1.5x,\n/static/52659ecfce9ed71e567bddef5d9c1b15/4f71c/Michal.png 2x,\n/static/52659ecfce9ed71e567bddef5d9c1b15/9ec3e/Michal.png 3x"}}},"headerImage":null},"html":"<p>Hi everyone! This article is the first in a series of AUTO1 testing-related posts, I hope you’ll find the content interesting enough to return for the rest in the series :) To start off, let’s ask one of the most important questions:</p>\n<h2>What is a Test Strategy?</h2>\n<p>In AUTO1 the test strategy is a high level, short and concise document which defines:</p>\n<ul>\n<li>\n<p>Scope of the testing</p>\n</li>\n<li>\n<p>Risks - areas that potentially can be broken</p>\n</li>\n<li>\n<p>Automation strategy</p>\n</li>\n<li>\n<p>Required test data</p>\n</li>\n<li>\n<p>Security</p>\n</li>\n</ul>\n<h2>Why do we create a Test Strategy?</h2>\n<p>In agile and fast changing environments we usually do not spend that much time on test documentation as in waterfall. However, even in such cases we cannot underestimate the importance of a test strategy. When you are creating a strategy it becomes your guide, a channel for your thoughts - you have a space to stop for a moment to try to understand what should be verified and do it at a very early stage. It is much easier to go back to the feature if you already wrote down your thoughts and you have some kind of summary.</p>\n<h2>How do we create a Test Strategy?</h2>\n<p>Let’s go through our thinking process, step by step.</p>\n<h4>Scope of the testing</h4>\n<p>Start with defining what exactly has to be tested. You can ask yourself a few questions:</p>\n<ul>\n<li>\n<p>Who is going to use the feature?</p>\n</li>\n<li>\n<p>What apps will be changed/created?</p>\n</li>\n<li>\n<p>On what devices will it be used?</p>\n</li>\n<li>\n<p>What types of testing will be needed?</p>\n</li>\n</ul>\n<p>It allows you to better understand the product you are going to test and the environment setup you’ll need.</p>\n<h4>Risks</h4>\n<p>Now think about all the things that can go wrong. Here the questions will be:</p>\n<ul>\n<li>\n<p>What apps/areas can be impacted by our change?</p>\n</li>\n<li>\n<p>Are we modifying dependencies of another system?</p>\n</li>\n<li>\n<p>Is my domain knowledge enough to understand a feature?</p>\n</li>\n<li>\n<p>Are there any missing prerequisites which can block testing?</p>\n</li>\n<li>\n<p>Are changes going to be compatible with existing solutions?</p>\n</li>\n</ul>\n<p>Answering these questions will help us create a plan in order to mitigate all risks. It can be planning an onboarding session with someone who has knowledge we need, investigating regression testing possibilities for apps or areas in danger or setting up a plan on how to get blockers done.</p>\n<h4>Automation strategy</h4>\n<p>Automation is an important part of our testing process. We think about the approach on the test strategy stage. We create our tests on an UI and API level. When we’ll have the technical specifications, which include details of implementation, then it is time to plan what and when will be automated. We ask questions such as:</p>\n<ul>\n<li>\n<p>Where is the specific logic placed? Is it frontend or backend?</p>\n</li>\n<li>\n<p>Do we have existing automation in this area? If yes, do we have to adjust it?</p>\n</li>\n<li>\n<p>Do we have all prerequisites needed to start writing automation?</p>\n</li>\n</ul>\n<h4>Required test data</h4>\n<p>At AUTO1 we have a lot of connections between several areas. It created dependencies which have to be covered in test data preparation. We have to be sure we know the preconditions and steps required to arrange the system before starting testing. Here we can specify if we need additional onboarding or support from other teams.</p>\n<p>Having answers to the above questions means we are prepared to plan more detailed test cases and we can use our strategy as some kind of a cheatsheet. However, do not blindly follow what you’ve planned - requirements can change. Review your strategy from time to time, to ensure that it is not outdated.</p>\n<h2>Summary</h2>\n<p>Test strategy shouldn’t take much time but it is important for the next step - creating a test plan. It can be a great guide which will help you to structure your initial ideas and be prepared for upcoming changes faster.</p>","fields":{"slug":"/efficient-testing-1/","tags":["auto1","engineering","testing","QA"]}}}]}},"pageContext":{"slug":"/tags/QA","tag":"QA","categories":["Architecture","Coding","DevOps","Engineering","ProjectManagement","QA","Social","TechRadar"]}}