Entering QA automation from being only manual tester
I have been a manual tester for the past 5 years with minimal almost non existent coding experience. I want to learn QA automation testing.
How should i go about this move? What should i do first? Courses online?
From what i have seen, manual testing is not in such a demand anymore. I need to look out for my future to provide for my family.
Thx in advance.
You may want to explore some test automation tools, check out their "Getting Started" manuals, install them and try them out, etc.
This may help:
All Things Quality: Free Trial Versions of Commercial Test Automation Tools
If your company has automation in place, try to find or create a apprenticeship program. Given that SQA Engineer salaries have risen a lot in the last 2 years, you can use the cost savings justification. You'll essentially propose that you'll be spending say, X% (like 20% or 1 day out of the week) on training and implementing automation of smoke tests then regression. During that time, they'll be getting automation work at a fraction of the cost while you're training. I recommend putting together a prioritized list of test suites you want to tackle and numbers of how long those normally take to test manually (even if you have to use a estimate, perhaps take a panel of different QA testers to give a ball park estimate and average them out.)
If your company does not... Most people I know who made it from manual QA without a CS background did some sort of skunkworks project. The most common thing to do is automate smoke testing for production deployments. Releases are a painful process, and but making things more automatic scores major Kudos from your boss and will get them into trusting you with more automation projects and working automation into their workflow. I would make sure you record the time spent doing manual testing, and do a cool power point presentation on how much time you saved. A good smoke test suite, especially when you have them running push button on Jenkins generally impresses the boss.
As for learning, I would recommend either learning something easy. I think Python is a good language for beginners who want to start automation, https://www.codecademy.com/learn/python
What I like about python is it's one of the languages that's supported by Selenium, a popular web testing library, and it can be easily run cross platform, without complicated build steps. Python also can be used in a test framework like Robot Framework, or introduction ? Lettuce 0.2.21 (kryptonite release) documentation Although I don't like keyword / BDD framework for the sake of making test scaleable, having nice syntactic candy makes it easier to sell it to the boss. He'll see nice pretty reports and be pleased with your work.
After learning the basics of python, and one of those test frameworks, then start learning Selenium, https://selenium-python.readthedocs....g-started.html, its one of the most popular cross browser open source testing libraries. That skill is in high demand. From there, figure out plugging in the Selenium code you're writing into the test fixture code in the test framework you learned.
As for holding your own in an automation job interview, I've written a blog post about it, Can a QA Engineer become an SDET?? - Overcoming Lack of formal CS Degree - The Book on SDET
Firstly, manual testing is not quite dead yet, but you're right that the trend is towards testers with technical capability.
Start with what you do at the moment, and explore how you can use tools and code to improve your testing. What's going to make the biggest immediate difference? Maybe CSS or SQL instead of automating checks.
If it's coding, then as David says, definitely explore what is currently available in your existing dev space. It may be easier getting your hands on some existing software that is supported in yourCo (Visual Studio, for example, to run coded UI) than to get approvals to install and learn new software, and if you could allocate a small % of time to build small tests then you could get the dev team onside for some basic tutorials if it's software that they already use.
How you learn will depend on your preferences and language. One thing I might input is that (for me) I found the "record and play" types of scripting easier to learn the code structure underneath - let the machine do the work, then read the code until you understand what it does, and then tweak it to make it reusable and maintainable. If you're not familiar with basic if/then, case, etc then a Coding for Dummies book might be a useful start.
There are two parts of your question:
- Firstly, you have nonexistent coding experience. Hence first of all you will have to learn basics of object oriented programming and you can pick any OOPs language to learn the same, like Java, .Net, Ruby etc.
- Secondly you have to identify the corresponding automation tool, like for Java you can pick Selenium and for Ruby you can pick Watir. Accordingly you can start learning the automation. To give a basic overview in selecting the tool you can refer on fine link
Any software testing company provides their employees with opportunities to learn automation for their mutual growth. Hence you can go for either in-house or outbound automation training.
Once you have learned the basics of automation, any company proving automated testing services will be keen to hire and retain you.
Hope I have been able to answer your query.
As you do not have the knowledge of the coding instead using Selenium start using HP UFT a lot easier for the beginners than selenium
Have few suggestions and choice is yours.
Automation is not only UI automation. YOu can think about API, CLI, Web service automation.
Look at your project and get the tool and type of automation would be more benefit (mutual - you and employer).
Based on that choose the language. Install and start the learning. I would suggest to get some friends/colleagues (experts/intermediate level skills) to teach you for couple of hours and then progress.
Learn the tools from experts and apply into your project. I would prefer friends/colleagues instead of training institutes.
Tags for this Thread