A brief description of what QA Automation is, a couple of tools and languages used to develop Automation, and some advice to improve yourself on it.
Let’s start with our definitions:
What is QA Automation?
It is the software verification tests created by a QA engineer to verify your product by launching, analyzing, executing, and delivering automated results with specific tools. In simpler words, “it’s a program that checks the correct functionality of another program and sends you the results”.
QA Automation is a program that checks the correct functionality of another program and sends you the results. Share on XBut first, learn a programming language
No matter what, the very first thing you need is to start learning and practicing a programming language.
There are tons of tools that can help you to achieve Automation, but choosing the right one will depend on what you need it for.
Some examples are:
- Selenium, Cypress, Watir for Web UI
- Postman/Rest-Assured for Web Services
- Cucumber for BDD
- Appium, Espresso for Mobile
- A couple of tools for visual assertions
- JMeter, LoadRunner, NeoLoad for Performance Testing
However, it’s preferable to have some previous experience in Automation before diving into Performance Testing.
It’s true that BDD is a complementary process on Automation, but Selenium + Cucumber is one of the easiest ways to start learning automation and a very good way to start practicing since the test automation is centered on being readable for the client.
Some programming languages that work
Now that we know a bit about a couple of tools to start practicing automation, let’s look at some of the programming languages that work with those tools.
Selenium, Cypress, Watir and most of the Web UI tools use Java as their main programming language. One of the most used, Selenium, is Open Source and as you can find on their page, you can develop automation tests on several languages:
- Java
- Phyton
- C#
- Ruby
- JavaScript
- Kotlin
By this point, we should choose which tool and programming language we want to start with.
About documentation
There is no better way to learn a new programming language than reading its documentation. For Selenium, we can find it in their official page: https://www.selenium.dev/documentation/en/getting_started/.
Remember: there is no better way to learn a new programming language than reading its documentation. Share on XSometimes, however, documentation is incomplete, badly written, or you just aren’t getting it, so another thing to try is online courses. By doing this, you can focus only on what you need and learn at your own pace, but remember to find the time and always practice.
Another option is to get formal training, dedicating time to learning with a breadth of coverage, and hands-on training.
However you want to improve, on your own, or with professional training, always remember to continue learning by reading books, articles/blogs, watching webinars, attending conferences, and continuous training.
Practice
Finally, one of the most asked questions while learning automation is “how/where can I practice?” There are tons of free automation test pages made by the community to practice on, and if you are working on a company that doesn’t have QA Automation, ask your boss if there is an internal project that you can practice on during your free time.
Remember the principle of learning: Practice - Improve - Repeat.
Thank you for reading!
@AlexTomoya, QualityAssurance at MagmaLabs