logo logo

Learning Test Automation from Scratch: Journey of the (Automation) Hero

Learning Test Automation from Scratch: Journey of the (Automation) Hero

Testing knowledge: the most underrated skill of an Automation Tester

People often come to me asking about the best way to start learning test automation. The gargantuan amount of tools, languages, frameworks and practices is overwhelming to anyone daring to look into the Automation abyss.

So, first of all, I will tell you something not-so-obvious: Automation Testing implies that you know about Testing. Yes, I know… a lot of you think of it as something more related to development than testing. I can see why: without coding you can be pretty limited on your automation journey. But there is another truth, and that’s learning to code to automate and forget about Testing because you don’t need it that much now. Big mistake!

So, of course, as the first thing to start your automation journey, you need to have your testing foundations solid and thriving. Know the weak points of a system based on the technologies used, get that instinct that tells you where things will fail, learn the techniques and become an awesome manual tester. Then… then you will be ready to take the next step of your Automation adventure.

Programming skills… of course!

And this next step, in my opinion, is Object Oriented Programming. You know, most people start learning Selenium or other frameworks based on this tool as the very first thing when thinking about Automation. But this often comes with the skipping of the pillars of OOP. Inheritance, Encapsulation, Abstraction and Polymorphism should be concepts you are familiar with during your initial steps. This will help you understand why your syntax is highlighted in red on your IDE. Or why you can’t call a method you have created in another class. Once you understand how programming works at a basic level, lots of doors will open in front of you πŸšͺ You will be able to create solutions by yourself and won’t depend in copy-pasting answers from blogs until something works without truly understanding the work being done.

So, now we have covered Manual Testing and Object Oriented Programming skills. That’s a killer duo! πŸ±β€πŸ‘€ And this is because pretty much any framework, tool and library you can come across will be like following a recipe being a chef πŸ‘¨β€πŸ³: You will know what they are talking about, understand the terms and why each tool does the stuff they do. You will have the knowledge to choose based on the needs of your application and not because “it’s all I know”.

By following these steps, you will be ready to experiment with new ways to automate in no time. Is it in a different language? The conversion from one language to another is not a big deal! So don’t worry now about which one to pick, cause by knowing in depth the theory of one of them, you will be ready to tackle a new one really fast.

How can I get experience if I need it to start working as Automation Tester?

Well, there is a simple thing you can do right now: Start learning and start creating tests for webpages you use at home. Go ahead and download any framework of your choice, like the awesome TestProject right here, and go through the documentation while you work hands on. Once you are confident with the results you are getting from the practice, you can suggest automating some manual tests in your project. One of the advantages of starting with a tool like TestProject is that it helps you create and, when you have the knowledge to, take a peep into how the code works πŸ‘€πŸ”₯

The better way to learn test automation is, after all, with practice. Don’t expect completing a course online and be an expert, because that’s something that comes with time, practice, failure (lots of it!) and experience. You will find the pleasure of experimenting with new frameworks and ways of achieving the same and new goals by exploring tools and libraries. Once you feel you know a fairly good amount of a specific tool, move to another, keep exploring, keep learning, because as we know, technologies change fast, and so does the world of automation testing.

Conclusion

Don’t wait for an opportunity at work, you have all the means at home, on your computer! And with tools like TestProject (100% free), there was never a better time to start learning test automation!

You can start investing time right now on your Automation knowledge, but without forgetting your testing roots. Become an excellent tester first, then move to the code behind Automation and become the ultimate Automation tester! πŸ’ͺπŸ‘‘

About the author

The Free Range Tester

I’m a consultant in all things Automation in Testing related. Originally from Argentina and currently working in the beautiful country of New Zealand, I’m passionate about learning new tools, testing the trends in the world of Automation and take the best practices to the next level, making my journey full of discoveries, experiments and, most importantly, fun!

I’ve vast knowledge and experience in both C# and Java and Selenium, Cucumber, Specflow and Rest Assured as the main tools among others. With the last months working on Python to support some Machine Learning and AI projects I’m working on as a hobby and also JS to test some of the trends in the Automation world, I try to keep myself learning as much as I can!

Currently teaching others how to automate from scratch, both virtually to Latin America and locally in New Zealand.

I’m also a Game Programmer and Guitar player on my free time!

Leave a Reply

FacebookLinkedInTwitterEmail