How would I convert from manual tester to test automation engineer?

Image for post
Image for post
Photo by William Iven on Unsplash

I was asked this question recently by a manual tester who wants to make the change to test automation in the future.

He is not looking for immediate results and is willing to invest time and money in the process.

He also wants to learn skills that would be good not only in 2020 but also in 2025.

I answered him that this is how I would do it.

What follows is not easy to do and it is not for everyone.

It requires dedication, hard work, motivation, lots of time and money.

To train for a test automation job, you do not start with the test automation libraries such as Selenium. No, you start with the programming language.

The most important skill is the programming language.

Learning how to use an automation library (or any library) is a very easy task once you know the programming well.

I answered in a separate article why I believe that JavaScript should be your choice as programming language so I will not repeat the same arguments again.

How would I learn Javascript assuming that I do not have any programming knowledge?

Start with free resources.

Such as the ones offered by FreeCodeCamp.

First, take the HTML course to learn what HTML is and what it can be used for. This is great knowledge since all websites are made with HTML.

All courses have chapters with theory and exercises. The best thing is that the exercises are done online and, if your solution is not correct, you will get hints that point to the correct one.

Next, continue with the CSS course. If web pages are built with HTML, CSS is the language that makes a page beautiful by adding styling to all HTML elements.

Both the HTML and CSS knowledge will be very handy when you start learning about JavaScript.

Finally, take the JAVASCRIPT course. If the HTML and CSS courses felt easier, this one will be more difficult. You will start having questions and need more help which is available in the FreeCodeCamp forums. There is a forum dedicated to HTML/CSS, another to JavaScript and many others on additional topics.

The FreeCodeCamp courses are fairly effective if you put the time into them and , most importantly, do not give up.

But they are not sufficient in most cases.

So, now that you have an idea about JavaScript, continue with online courses and books.

Image for post
Image for post

After the FreeCodeCamp introductions to HTML, CSS and JAVASCRIPT, read a book about Javascript programming.

Head First Javascript Programming is probably one of the best Javascript books written so far. It will teach you everything from language fundamentals to advanced topics such as objects, functions and document object model.

You won’t just be reading — you’ll be playing games, solving puzzles, pondering mysteries, and interacting with JavaScript in ways you never imagined. And you’ll write real code, lots of it, so you can start building your own web applications.

This is not a typical programming book.

Using the latest research in cognitive science and learning theory to craft a multi-sensory learning experience, Head First JavaScript Programming uses a visually rich format designed for the way your brain works, not a text-heavy approach that puts you to sleep.

It does not matter if some things you already understand. Read the book page by page, chapter by chapter even if some topics are familiar so that, by repetition, they become solid.

Next, you should take online JavaScript courses like the ones from

This is a good course to start with but there are many others available:

JavaScript Essential Training

Image for post
Image for post

If you do not like the (or LinkedIn Learning), you can try the JavaScript courses from PluralSight.

Are you ready now?

Do you know enough JavaScript for test automation?

You don’t.

The next part is one that is expensive and truly hard.

The JavaScript coding bootcamp.

What you should have after using the FreeCodeCamp courses, the Javascript book and the Javascript online courses is enough theory and understanding of how JavaScript works, what you can do with it and how to use it.

But you don’t have practice yet.

To become a JavaScript developer or a JavaScript test automation engineer, you need lots and lot of practice writing JavaScript code.

You may say that you can do the practice alone and figure out the solutions to the problems that you encounter by yourself.

You can try that but it may be a very hard, very stressful and very time consuming activity. Your chances of success will be higher if you do not do this by yourself but find a mentor and a group of people that have the same goal as you.

Instead of practicing alone, I suggest that you attend a coding bootcamp.

Such as this one.

The bootcamp will get you from understanding JavaScript theory to mastering JavaScript coding.

It will teach you other skills such as unit testing (with Mocha and Chai), front end development with React JS, back end development with Node.JS, software architecture and databases.

It costs money, it takes 12 weeks but you work on JavaScript every day, will be surrounded by lots of people with the same goal, will get a mentor, will get lots of exercises and projects.

At the end of it, you will be ready for the development job that you wanted.

Or the test automation one :)

The investment is significant in time and money but totally worth it.

A test automation full time job starts at approximately $70.000 per year in Canada. A similar job on contract starts at $40–50 per hour.

It will not be long until you cover for your financial investment and do the job that you wanted.

This is how I would do it.

This article is just an advice to myself if I would be a manual tester that wants to learn programming.

Written by

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store